Re: [PATCH 00/21] objtool: vmlinux.o and CLANG LTO support

From: Sedat Dilek
Date: Fri Jan 15 2021 - 16:02:15 EST


On Fri, Jan 15, 2021 at 9:59 PM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
>
> On Fri, Jan 15, 2021 at 09:19:16PM +0100, Sedat Dilek wrote:
> > > > vmlinux.o: warning: objtool: balance_leaf_when_delete()+0x17d4: stack
> > > > state mismatch: cfa1=7+192 cfa2=7+176
> > > > vmlinux.o: warning: objtool: internal_move_pointers_items()+0x9f7:
> > > > stack state mismatch: cfa1=7+160 cfa2=7+176
> > > > vmlinux.o: warning: objtool: strncpy_from_user()+0x181: call to
> > > > do_strncpy_from_user() with UACCESS enabled
> > > > vmlinux.o: warning: objtool: strnlen_user()+0x12b: call to
> > > > do_strnlen_user() with UACCESS enabled
> > > > vmlinux.o: warning: objtool: i915_gem_execbuffer2_ioctl()+0x390: call
> > > > to __ubsan_handle_negate_overflow() with UACCESS enabled
> > > > vmlinux.o: warning: objtool: .text.snd_trident_free_voice: unexpected
> > > > end of section
> > > >
> > > > I haven't had a chance to take a closer look yet, but some of these
> > > > are probably related to
> > > > https://github.com/ClangBuiltLinux/linux/issues/1192. However, I can
> > > > reproduce these also with ToT Clang, not just with Clang 11.
> > >
> > > Thanks, I'm able to reproduce these. Will take a look.
> > >
> >
> > AFAICS, that misses the v2 diff (see attachment) you sent me when
> > dealing with objtool-vmlinux and clang-cfi.
> > It does not cleanly apply with the combination of your objtool-vmlinux
> > Git and clang-cfi Git.
>
> Patches 11 and 12 should in theory have the same functionality as that
> diff. I just refactored the code a bit before posting.
>

Just realized that when looking at "objtool: Add CONFIG_CFI_CLANG
support" in your tree.

- Sedat -