Re: [PATCH] objtool: Fix objtool fallthrough detection with function padding

From: Josh Poimboeuf
Date: Mon Aug 21 2017 - 09:05:42 EST


On Fri, Aug 11, 2017 at 12:24:15PM -0500, Josh Poimboeuf wrote:
> When GCC adds NOP padding between functions, those NOPs aren't
> associated with a function symbol, which breaks objtool's detection of a
> function falling through to another function. Instead it shows
> confusing errors like:
>
> drivers/mtd/chips/cfi_util.o: warning: objtool: cfi_qry_mode_on()+0x8b: return with modified stack frame
> drivers/mtd/chips/cfi_util.o: warning: objtool: cfi_qry_mode_on()+0x0: stack state mismatch: cfa1=-4-32 cfa2=7+8
> drivers/mtd/chips/cfi_cmdset_0002.o: warning: objtool: fixup_use_fwh_lock()+0x8: unknown stack-related register move
> drivers/mtd/chips/cfi_cmdset_0002.o: warning: objtool: fixup_use_fwh_lock()+0x0: stack state mismatch: cfa1=6+16 cfa2=7+8
> drivers/mtd/chips/cfi_cmdset_0002.o: warning: objtool: do_otp_write()+0xa: unsupported stack pointer realignment
> drivers/mtd/chips/cfi_cmdset_0002.o: warning: objtool: do_otp_write()+0x0: stack state mismatch: cfa1=-4-40 cfa2=7+8
>
> Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
> Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>

Ping?

--
Josh