vmlinux.o: warning: objtool: ct_idle_enter+0x14: call to ftrace_likely_update() leaves .noinstr.text section

From: kernel test robot
Date: Sun Feb 19 2023 - 22:06:02 EST


Hi Frederic,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c9c3395d5e3dcc6daee66c6908354d47bf98cb0c
commit: c33ef43a359001415032665dfcd433979c462b71 rcu/context-tracking: Remove unused and/or unecessary middle functions
date: 8 months ago
config: x86_64-randconfig-a001-20230220 (https://download.01.org/0day-ci/archive/20230220/202302201112.den9cybf-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-8) 11.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c33ef43a359001415032665dfcd433979c462b71
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout c33ef43a359001415032665dfcd433979c462b71
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 olddefconfig
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Link: https://lore.kernel.org/oe-kbuild-all/202302201112.den9cybf-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

ld: warning: net/bpfilter/bpfilter_umh_blob.o: missing .note.GNU-stack section implies executable stack
ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
vmlinux.o: warning: objtool: __rdgsbase_inactive+0x34: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: __wrgsbase_inactive+0x39: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: fixup_bad_iret+0x89: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: noist_exc_debug+0x50: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: exc_nmi+0x35: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: poke_int3_handler+0x4b: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_nmi_enter+0x4c: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_nmi_exit+0x53: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: enter_from_user_mode+0x5b: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode+0x60: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare+0x5b: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_enter_from_user_mode+0x5b: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_exit+0x40: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: rcu_dynticks_eqs_enter+0x28: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: rcu_dynticks_eqs_exit+0x28: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: rcu_eqs_exit.constprop.0+0x26: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: rcu_eqs_enter.constprop.0+0x3d: call to ftrace_likely_update() leaves .noinstr.text section
>> vmlinux.o: warning: objtool: ct_idle_enter+0x14: call to ftrace_likely_update() leaves .noinstr.text section
>> vmlinux.o: warning: objtool: ct_nmi_enter+0x36: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: ct_irq_enter+0x38: call to ftrace_likely_update() leaves .noinstr.text section
vmlinux.o: warning: objtool: ct_irq_exit+0x38: call to ftrace_likely_update() leaves .noinstr.text section


objdump-func vmlinux.o ct_idle_enter:
0000 000000000000325e <ct_idle_enter>:
0000 325e: f3 0f 1e fa endbr64
0004 3262: 31 d2 xor %edx,%edx
0006 3264: 31 f6 xor %esi,%esi
0008 3266: b9 01 00 00 00 mov $0x1,%ecx
000d 326b: 48 c7 c7 00 00 00 00 mov $0x0,%rdi 326e: R_X86_64_32S _ftrace_annotated_branch+0x54090
0014 3272: e8 00 00 00 00 call 3277 <ct_idle_enter+0x19> 3273: R_X86_64_PLT32 ftrace_likely_update-0x4
0019 3277: b9 01 00 00 00 mov $0x1,%ecx
001e 327c: 31 d2 xor %edx,%edx
0020 327e: 31 f6 xor %esi,%esi
0022 3280: 48 c7 c7 00 00 00 00 mov $0x0,%rdi 3283: R_X86_64_32S _ftrace_annotated_branch+0x54060
0029 3287: e8 00 00 00 00 call 328c <ct_idle_enter+0x2e> 3288: R_X86_64_PLT32 ftrace_likely_update-0x4
002e 328c: e9 44 fe ff ff jmp 30d5 <rcu_eqs_enter.constprop.0>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests