Re: [PATCH 16/15] bugs/s390: Use in 'cond_str' to __EMIT_BUG()

From: Heiko Carstens
Date: Mon Jun 09 2025 - 11:57:44 EST


On Mon, Jun 09, 2025 at 10:27:44AM +0200, Ingo Molnar wrote:
> So I'm not sure what happened: I tried to reproduce what I did
> originally, but my naive patch ran into assembler build errors when a
> WARN_ON() macro tried to use the '%' C operator, such as
> fs/crypto/crypto.c:123:
>
> include/linux/compiler_types.h:497:20: error: invalid 'asm': invalid %-code
> arch/s390/include/asm/bug.h:12:2: note: in expansion of macro 'asm_inline'
> arch/s390/include/asm/bug.h:50:2: note: in expansion of macro '__EMIT_BUG'
> include/asm-generic/bug.h:119:3: note: in expansion of macro '__WARN_FLAGS'
> fs/crypto/crypto.c:123:6: note: in expansion of macro 'WARN_ON_ONCE'
>
> Which corresponds to:
>
> if (WARN_ON_ONCE(len % FSCRYPT_CONTENTS_ALIGNMENT != 0))
> return -EINVAL;
>
> I'm quite sure I never saw these build errors - I saw linker errors
> related to the u16 overflow I documented in the changelog. (Note to
> self: copy & paste more of the build error context next time around.)
>
> Your version doesn't have that build problem, so I picked it up with
> the changelog below and your Signed-off-by. Does that look good to you?

Yes, fine with me.