vmlinux.o: warning: objtool: svm_vcpu_enter_exit+0x34: call to context_tracking_enabled_this_cpu() leaves .noinstr.text section

From: kernel test robot
Date: Mon Sep 11 2023 - 18:44:30 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 0bb80ecc33a8fb5a682236443c1e740d5c917d1d
commit: 656d054e0a15ec327bd82801ccd58201e59f6896 jump_label,noinstr: Avoid instrumentation for JUMP_LABEL=n builds
date: 1 year, 4 months ago
config: x86_64-randconfig-102-20230911 (https://download.01.org/0day-ci/archive/20230912/202309120137.Eo6SpBIz-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230912/202309120137.Eo6SpBIz-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202309120137.Eo6SpBIz-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

ld: warning: arch/x86/power/hibernate_asm_64.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: svm_vcpu_enter_exit+0x34: call to context_tracking_enabled_this_cpu() leaves .noinstr.text section
vmlinux.o: warning: objtool: enter_from_user_mode+0x52: call to on_thread_stack() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode+0x56: call to on_thread_stack() leaves .noinstr.text section
vmlinux.o: warning: objtool: syscall_enter_from_user_mode_prepare+0x52: call to on_thread_stack() leaves .noinstr.text section
vmlinux.o: warning: objtool: irqentry_enter_from_user_mode+0x52: call to on_thread_stack() leaves .noinstr.text section
vmlinux.o: warning: objtool: crc_pcl+0x7c: missing int3 after indirect jump
ld: warning: vmlinux.o: requires executable stack (because the .note.GNU-stack section is executable)
ld: warning: .tmp_vmlinux.kallsyms1 has a LOAD segment with RWX permissions
ld: warning: vmlinux.o: requires executable stack (because the .note.GNU-stack section is executable)
ld: warning: .tmp_vmlinux.kallsyms2 has a LOAD segment with RWX permissions
ld: warning: vmlinux.o: requires executable stack (because the .note.GNU-stack section is executable)
ld: warning: vmlinux has a LOAD segment with RWX permissions


objdump-func vmlinux.o svm_vcpu_enter_exit:
0000 00000000000001eb <svm_vcpu_enter_exit>:
0000 1eb: 41 55 push %r13
0002 1ed: 41 54 push %r12
0004 1ef: 55 push %rbp
0005 1f0: 53 push %rbx
0006 1f1: 48 8b 87 48 24 00 00 mov 0x2448(%rdi),%rax
000d 1f8: 48 89 fb mov %rdi,%rbx
0010 1fb: 4c 8b 68 08 mov 0x8(%rax),%r13
0014 1ff: 90 nop
0015 200: e8 00 00 00 00 call 205 <svm_vcpu_enter_exit+0x1a> 201: R_X86_64_PLT32 trace_hardirqs_on_prepare-0x4
001a 205: e8 00 00 00 00 call 20a <svm_vcpu_enter_exit+0x1f> 206: R_X86_64_PLT32 lockdep_hardirqs_on_prepare-0x4
001f 20a: 90 nop
0020 20b: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 211 <svm_vcpu_enter_exit+0x26> 20d: R_X86_64_PC32 context_tracking_key-0x4
0026 211: 85 c0 test %eax,%eax
0028 213: 7e 0a jle 21f <svm_vcpu_enter_exit+0x34>
002a 215: bf 02 00 00 00 mov $0x2,%edi
002f 21a: e8 00 00 00 00 call 21f <svm_vcpu_enter_exit+0x34> 21b: R_X86_64_PLT32 __context_tracking_enter-0x4
0034 21f: e8 00 00 00 00 call 224 <svm_vcpu_enter_exit+0x39> 220: R_X86_64_PC32 .text+0x12b162
0039 224: 84 c0 test %al,%al
003b 226: 75 07 jne 22f <svm_vcpu_enter_exit+0x44>
003d 228: 90 nop
003e 229: e8 00 00 00 00 call 22e <svm_vcpu_enter_exit+0x43> 22a: R_X86_64_PC32 .text+0x136e61
0043 22e: 90 nop
0044 22f: 48 8b 7c 24 20 mov 0x20(%rsp),%rdi
0049 234: e8 00 00 00 00 call 239 <svm_vcpu_enter_exit+0x4e> 235: R_X86_64_PLT32 lockdep_hardirqs_on-0x4
004e 239: 48 8b 03 mov (%rbx),%rax
0051 23c: 80 b8 61 ab 00 00 00 cmpb $0x0,0xab61(%rax)
0058 243: 74 19 je 25e <svm_vcpu_enter_exit+0x73>
005a 245: 80 b8 60 ab 00 00 00 cmpb $0x0,0xab60(%rax)
0061 24c: 75 06 jne 254 <svm_vcpu_enter_exit+0x69>
0063 24e: 90 nop
0064 24f: 0f 0b ud2
0066 251: 90 nop
0067 252: eb 0a jmp 25e <svm_vcpu_enter_exit+0x73>
0069 254: 4c 89 ef mov %r13,%rdi
006c 257: e8 00 00 00 00 call 25c <svm_vcpu_enter_exit+0x71> 258: R_X86_64_PLT32 __svm_sev_es_vcpu_run-0x4
0071 25c: eb 7d jmp 2db <svm_vcpu_enter_exit+0xf0>
0073 25e: 4c 63 63 20 movslq 0x20(%rbx),%r12
0077 262: 48 c7 c5 00 00 00 00 mov $0x0,%rbp 265: R_X86_64_32S svm_data
007e 269: 49 81 fc ff 1f 00 00 cmp $0x1fff,%r12
0085 270: 76 0f jbe 281 <svm_vcpu_enter_exit+0x96>
0087 272: 4c 89 e6 mov %r12,%rsi
008a 275: 48 c7 c7 00 00 00 00 mov $0x0,%rdi 278: R_X86_64_32S .data+0xc6500
0091 27c: e8 00 00 00 00 call 281 <svm_vcpu_enter_exit+0x96> 27d: R_X86_64_PLT32 __ubsan_handle_out_of_bounds-0x4
0096 281: 4a 8b 04 e5 00 00 00 00 mov 0x0(,%r12,8),%rax 285: R_X86_64_32S __per_cpu_offset
009e 289: 48 8b 2c 28 mov (%rax,%rbp,1),%rbp
00a2 28d: 48 8b 83 30 24 00 00 mov 0x2430(%rbx),%rax
00a9 294: 0f 01 da vmload
00ac 297: eb 05 jmp 29e <svm_vcpu_enter_exit+0xb3>
00ae 299: e8 00 00 00 00 call 29e <svm_vcpu_enter_exit+0xb3> 29a: R_X86_64_PLT32 kvm_spurious_fault-0x4
00b3 29e: 48 8d b3 c0 01 00 00 lea 0x1c0(%rbx),%rsi
00ba 2a5: 4c 89 ef mov %r13,%rdi
00bd 2a8: e8 00 00 00 00 call 2ad <svm_vcpu_enter_exit+0xc2> 2a9: R_X86_64_PLT32 __svm_vcpu_run-0x4
00c2 2ad: 48 8b 83 30 24 00 00 mov 0x2430(%rbx),%rax
00c9 2b4: 0f 01 db vmsave
00cc 2b7: eb 05 jmp 2be <svm_vcpu_enter_exit+0xd3>
00ce 2b9: e8 00 00 00 00 call 2be <svm_vcpu_enter_exit+0xd3> 2ba: R_X86_64_PLT32 kvm_spurious_fault-0x4
00d3 2be: 48 8b 45 28 mov 0x28(%rbp),%rax
00d7 2c2: 48 2b 05 00 00 00 00 sub 0x0(%rip),%rax # 2c9 <svm_vcpu_enter_exit+0xde> 2c5: R_X86_64_PC32 vmemmap_base-0x4
00de 2c9: 48 c1 f8 06 sar $0x6,%rax
00e2 2cd: 48 c1 e0 0c shl $0xc,%rax
00e6 2d1: 0f 01 da vmload
00e9 2d4: eb 05 jmp 2db <svm_vcpu_enter_exit+0xf0>
00eb 2d6: e8 00 00 00 00 call 2db <svm_vcpu_enter_exit+0xf0> 2d7: R_X86_64_PLT32 kvm_spurious_fault-0x4
00f0 2db: 48 8b 7c 24 20 mov 0x20(%rsp),%rdi
00f5 2e0: e8 00 00 00 00 call 2e5 <svm_vcpu_enter_exit+0xfa> 2e1: R_X86_64_PLT32 lockdep_hardirqs_off-0x4
00fa 2e5: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 2eb <svm_vcpu_enter_exit+0x100> 2e7: R_X86_64_PC32 context_tracking_key-0x4
0100 2eb: 85 c0 test %eax,%eax
0102 2ed: 7e 0a jle 2f9 <svm_vcpu_enter_exit+0x10e>
0104 2ef: bf 02 00 00 00 mov $0x2,%edi
0109 2f4: e8 00 00 00 00 call 2f9 <svm_vcpu_enter_exit+0x10e> 2f5: R_X86_64_PLT32 __context_tracking_exit-0x4
010e 2f9: 90 nop
010f 2fa: e8 00 00 00 00 call 2ff <svm_vcpu_enter_exit+0x114> 2fb: R_X86_64_PLT32 trace_hardirqs_off_finish-0x4
0114 2ff: 90 nop
0115 300: 5b pop %rbx
0116 301: 5d pop %rbp
0117 302: 41 5c pop %r12
0119 304: 41 5d pop %r13
011b 306: 31 c0 xor %eax,%eax
011d 308: 31 f6 xor %esi,%esi
011f 30a: 31 ff xor %edi,%edi
0121 30c: c3 ret
0122 30d: cc int3
0123 30e: 66 90 xchg %ax,%ax

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