From: Nathan Chancellor <nathan@kernel.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
linux-kernel@vger.kernel.org, x86@kernel.org,
Ingo Molnar <mingo@kernel.org>, Kees Cook <kees@kernel.org>,
kernel test robot <lkp@intel.com>
Subject: Re: [tip:x86/core 1/1] vmlinux.o: warning: objtool: rcar_pcie_probe+0x13e: no-cfi indirect call!
Date: Thu, 9 Oct 2025 20:20:01 -0700 [thread overview]
Message-ID: <20251010032001.GA3741500@ax162> (raw)
In-Reply-To: <202510092124.O2IX0Jek-lkp@intel.com>
Hi Peter,
On Thu, Oct 09, 2025 at 09:07:02PM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/core
> head: 6c6e6a5416471498d8aafc050110bec9467e4da7
> commit: 6c6e6a5416471498d8aafc050110bec9467e4da7 [1/1] Merge branch 'linus' into x86/core, to resolve conflicts
It appears that this got bisected to the merge because the configuration
has CONFIG_CFI=y, which needs the rename that is in Linus's tree. This
is reproducible with just commit 894af4a1cde6 ("objtool: Validate kCFI
calls") cherry-picked onto 6.17 and CONFIG_CFI_CLANG=y in the config
provided at the link below.
> config: x86_64-buildonly-randconfig-001-20251009 (https://download.01.org/0day-ci/archive/20251009/202510092124.O2IX0Jek-lkp@intel.com/config)
> compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251009/202510092124.O2IX0Jek-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202510092124.O2IX0Jek-lkp@intel.com/
>
> All warnings (new ones prefixed by >>):
>
> >> vmlinux.o: warning: objtool: rcar_pcie_probe+0x13e: no-cfi indirect call!
I do see an indirect call in rcar_pcie_probe() with ->host_init_fn() but
rcar_pcie_probe() is not __nocfi... +0x13e is 0x8d9d7e in this build.
8d9d6f: 31 c0 xorl %eax, %eax
8d9d71: 49 89 86 58 06 00 00 movq %rax, 0x658(%r14)
8d9d78: 4c 89 ff movq %r15, %rdi
8d9d7b: 45 31 db xorl %r11d, %r11d
8d9d7e: 2e e8 00 00 00 00 callq 0x8d9d84 <rcar_pcie_probe+0x144>
00000000008d9d80: R_X86_64_PLT32 __x86_indirect_thunk_r11-0x4
Is this an issue with the objtool check or is clang not generating the
right code?
Cheers,
Nathan
next prev parent reply other threads:[~2025-10-10 3:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-09 13:07 [tip:x86/core 1/1] vmlinux.o: warning: objtool: rcar_pcie_probe+0x13e: no-cfi indirect call! kernel test robot
2025-10-10 3:20 ` Nathan Chancellor [this message]
2025-10-10 7:10 ` Peter Zijlstra
2025-10-10 7:44 ` Peter Zijlstra
2025-10-10 22:30 ` Nathan Chancellor
2025-10-10 22:53 ` Kees Cook
2025-10-13 8:26 ` Peter Zijlstra
2025-10-13 18:30 ` Nathan Chancellor
2025-10-13 18:50 ` Peter Zijlstra
2025-10-13 20:08 ` Peter Zijlstra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251010032001.GA3741500@ax162 \
--to=nathan@kernel.org \
--cc=kees@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
--cc=llvm@lists.linux.dev \
--cc=mingo@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=peterz@infradead.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox