* [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock
@ 2025-03-28 14:49 kernel test robot
2025-03-28 16:31 ` Josh Poimboeuf
0 siblings, 1 reply; 7+ messages in thread
From: kernel test robot @ 2025-03-28 14:49 UTC (permalink / raw)
To: Josh Poimboeuf; +Cc: llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git objtool/urgent
head: 1c9d28fdf70d4ae3e8dfeadee982461403c6bb50
commit: c5995abe15476798b2e2f0163a33404c41aafc8f [9/23] objtool: Improve error handling
config: x86_64-randconfig-161-20250327 (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-lkp@intel.com/config)
compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-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/202503282236.UhfRsF3B-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock
>> vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-28 14:49 [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock kernel test robot @ 2025-03-28 16:31 ` Josh Poimboeuf 2025-03-28 23:24 ` Nathan Chancellor 0 siblings, 1 reply; 7+ messages in thread From: Josh Poimboeuf @ 2025-03-28 16:31 UTC (permalink / raw) To: kernel test robot; +Cc: llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Fri, Mar 28, 2025 at 10:49:22PM +0800, kernel test robot wrote: > tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git objtool/urgent > head: 1c9d28fdf70d4ae3e8dfeadee982461403c6bb50 > commit: c5995abe15476798b2e2f0163a33404c41aafc8f [9/23] objtool: Improve error handling > config: x86_64-randconfig-161-20250327 (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-lkp@intel.com/config) > compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1) > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-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/202503282236.UhfRsF3B-lkp@intel.com/ > > All warnings (new ones prefixed by >>): > > >> vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock > >> vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data Hi test robot, I'm unable to recreate this one: >> vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data Can you rerun with OBJTOOL_VERBOSE=1 added to the make command line (or exported)? -- Josh ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-28 16:31 ` Josh Poimboeuf @ 2025-03-28 23:24 ` Nathan Chancellor 2025-03-29 4:46 ` Josh Poimboeuf 0 siblings, 1 reply; 7+ messages in thread From: Nathan Chancellor @ 2025-03-28 23:24 UTC (permalink / raw) To: Josh Poimboeuf Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Fri, Mar 28, 2025 at 09:31:15AM -0700, Josh Poimboeuf wrote: > On Fri, Mar 28, 2025 at 10:49:22PM +0800, kernel test robot wrote: > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git objtool/urgent > > head: 1c9d28fdf70d4ae3e8dfeadee982461403c6bb50 > > commit: c5995abe15476798b2e2f0163a33404c41aafc8f [9/23] objtool: Improve error handling > > config: x86_64-randconfig-161-20250327 (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-lkp@intel.com/config) > > compiler: clang version 20.1.1 (https://github.com/llvm/llvm-project 424c2d9b7e4de40d0804dd374721e6411c27d1d1) > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-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/202503282236.UhfRsF3B-lkp@intel.com/ > > > > All warnings (new ones prefixed by >>): > > > > >> vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock > > >> vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > > Hi test robot, > > I'm unable to recreate this one: > > >> vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > > Can you rerun with OBJTOOL_VERBOSE=1 added to the make command line (or > exported)? I was able to reproduce this with LLVM 20.1.1 from kernel.org [1]. This configuration has full LTO enabled so the build takes some time... it also has several UBSAN configurations enabled but turning off UBSAN does not resolve it (could be KCOV related?). $ git cite ae958b12940b ("objtool, drm/vmwgfx: Don't ignore vmw_send_msg() for ORC") $ curl -LSso .config https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-lkp@intel.com/config $ make -skj"$(nproc)" ARCH=x86_64 LLVM=1 OBJTOOL_VERBOSE=1 olddefconfig vmlinux ... vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data vmlinux.o: warning: objtool: synaptics_report_mt_data+0x33e: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x254: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1d4: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1b8: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x156: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x13a: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0xda: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0xbe: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x63: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x48: (branch) vmlinux.o: warning: objtool: synaptics_report_mt_data+0x0: <=== (sym) ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --static-call --uaccess --noinstr --link vmlinux.o.orig -o vmlinux.o vmlinux.o.orig is 391MB so probably not too shareable but if there is any other information I can give you, I am happy to do so. [1]: https://mirrors.edge.kernel.org/pub/tools/llvm/ Cheers, Nathan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-28 23:24 ` Nathan Chancellor @ 2025-03-29 4:46 ` Josh Poimboeuf 2025-03-29 20:06 ` Nathan Chancellor 0 siblings, 1 reply; 7+ messages in thread From: Josh Poimboeuf @ 2025-03-29 4:46 UTC (permalink / raw) To: Nathan Chancellor Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Fri, Mar 28, 2025 at 04:24:49PM -0700, Nathan Chancellor wrote: > I was able to reproduce this with LLVM 20.1.1 from kernel.org [1]. This > configuration has full LTO enabled so the build takes some time... it > also has several UBSAN configurations enabled but turning off UBSAN does > not resolve it (could be KCOV related?). > > $ git cite > ae958b12940b ("objtool, drm/vmwgfx: Don't ignore vmw_send_msg() for ORC") > > $ curl -LSso .config https://download.01.org/0day-ci/archive/20250328/202503282236.UhfRsF3B-lkp@intel.com/config > > $ make -skj"$(nproc)" ARCH=x86_64 LLVM=1 OBJTOOL_VERBOSE=1 olddefconfig vmlinux > ... > vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x33e: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x254: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1d4: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1b8: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x156: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x13a: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xda: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xbe: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x63: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x48: (branch) > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x0: <=== (sym) > ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --static-call --uaccess --noinstr --link vmlinux.o.orig -o vmlinux.o > > vmlinux.o.orig is 391MB so probably not too shareable but if there is > any other information I can give you, I am happy to do so. Nice! Can you share the disassembly of the function? objdump -drw -j .text.synaptics_report_mt_data vmlinux.o.orig Also, if you happen to have CONFIG_DEBUG_INFO enabled, the line number of that last branch: addr2line -fpie vmlinux.o.orig -j .text.synaptics_report_mt_data 0x33e Thanks! -- Josh ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-29 4:46 ` Josh Poimboeuf @ 2025-03-29 20:06 ` Nathan Chancellor 2025-03-30 2:44 ` Josh Poimboeuf 0 siblings, 1 reply; 7+ messages in thread From: Nathan Chancellor @ 2025-03-29 20:06 UTC (permalink / raw) To: Josh Poimboeuf Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Fri, Mar 28, 2025 at 09:46:06PM -0700, Josh Poimboeuf wrote: > On Fri, Mar 28, 2025 at 04:24:49PM -0700, Nathan Chancellor wrote: > > vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x33e: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x254: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1d4: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1b8: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x156: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x13a: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xda: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xbe: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x63: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x48: (branch) > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x0: <=== (sym) > > ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --static-call --uaccess --noinstr --link vmlinux.o.orig -o vmlinux.o > > Nice! Can you share the disassembly of the function? Sure thing! > objdump -drw -j .text.synaptics_report_mt_data vmlinux.o.orig 0000000000000000 <synaptics_report_mt_data>: 0: 55 push %rbp 1: 48 89 e5 mov %rsp,%rbp 4: 41 57 push %r15 6: 41 56 push %r14 8: 41 55 push %r13 a: 41 54 push %r12 c: 53 push %rbx d: 48 83 e4 f0 and $0xfffffffffffffff0,%rsp 11: 48 83 ec 50 sub $0x50,%rsp 15: 41 89 d3 mov %edx,%r11d 18: 49 89 f7 mov %rsi,%r15 1b: 48 8b 05 00 00 00 00 mov 0x0(%rip),%rax # 22 <synaptics_report_mt_data+0x22> 1e: R_X86_64_PC32 __stack_chk_guard-0x4 22: 48 89 44 24 40 mov %rax,0x40(%rsp) 27: 4c 8b 75 08 mov 0x8(%rbp),%r14 2b: 48 c7 c0 00 00 00 00 mov $0x0,%rax 2e: R_X86_64_32S _text+0x7f000000 32: 49 29 c6 sub %rax,%r14 35: 48 8b 1c 25 00 00 00 00 mov 0x0,%rbx 39: R_X86_64_32S current_task 3d: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 43 <synaptics_report_mt_data+0x43> 3f: R_X86_64_PC32 __preempt_count-0x4 43: 25 00 01 ff 00 and $0xff0100,%eax 48: 74 10 je 5a <synaptics_report_mt_data+0x5a> 4a: 3d 00 01 00 00 cmp $0x100,%eax 4f: 75 35 jne 86 <synaptics_report_mt_data+0x86> 51: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 58: 74 2c je 86 <synaptics_report_mt_data+0x86> 5a: 8b 83 88 14 00 00 mov 0x1488(%rbx),%eax 60: 83 f8 02 cmp $0x2,%eax 63: 75 21 jne 86 <synaptics_report_mt_data+0x86> 65: 48 8b 83 90 14 00 00 mov 0x1490(%rbx),%rax 6c: 48 8b 08 mov (%rax),%rcx 6f: 48 8d 51 01 lea 0x1(%rcx),%rdx 73: 8b b3 8c 14 00 00 mov 0x148c(%rbx),%esi 79: 48 39 f2 cmp %rsi,%rdx 7c: 73 08 jae 86 <synaptics_report_mt_data+0x86> 7e: 48 89 10 mov %rdx,(%rax) 81: 4c 89 74 c8 08 mov %r14,0x8(%rax,%rcx,8) 86: 48 8b 07 mov (%rdi),%rax 89: 4c 8b 67 08 mov 0x8(%rdi),%r12 8d: 4c 89 7c 24 30 mov %r15,0x30(%rsp) 92: 48 8d 48 54 lea 0x54(%rax),%rcx 96: 48 89 4c 24 38 mov %rcx,0x38(%rsp) 9b: 48 b9 aa aa aa aa aa aa aa aa movabs $0xaaaaaaaaaaaaaaaa,%rcx a5: 48 89 4c 24 28 mov %rcx,0x28(%rsp) aa: 48 89 4c 24 20 mov %rcx,0x20(%rsp) af: 44 89 d9 mov %r11d,%ecx b2: 8b 15 00 00 00 00 mov 0x0(%rip),%edx # b8 <synaptics_report_mt_data+0xb8> b4: R_X86_64_PC32 __preempt_count-0x4 b8: 81 e2 00 01 ff 00 and $0xff0100,%edx be: 74 11 je d1 <synaptics_report_mt_data+0xd1> c0: 81 fa 00 01 00 00 cmp $0x100,%edx c6: 75 5b jne 123 <synaptics_report_mt_data+0x123> c8: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) cf: 74 52 je 123 <synaptics_report_mt_data+0x123> d1: 8b 93 88 14 00 00 mov 0x1488(%rbx),%edx d7: 83 fa 03 cmp $0x3,%edx da: 75 47 jne 123 <synaptics_report_mt_data+0x123> dc: 48 8b 93 90 14 00 00 mov 0x1490(%rbx),%rdx e3: 44 8b 83 8c 14 00 00 mov 0x148c(%rbx),%r8d ea: 49 c1 e0 03 shl $0x3,%r8 ee: 4c 8b 12 mov (%rdx),%r10 f1: 4c 89 d6 mov %r10,%rsi f4: 48 c1 e6 05 shl $0x5,%rsi f8: 4c 8d 4e 28 lea 0x28(%rsi),%r9 fc: 4d 39 c1 cmp %r8,%r9 ff: 77 22 ja 123 <synaptics_report_mt_data+0x123> 101: 49 ff c2 inc %r10 104: 4c 89 12 mov %r10,(%rdx) 107: 48 c7 44 32 08 05 00 00 00 movq $0x5,0x8(%rdx,%rsi,1) 110: 48 c7 44 32 10 01 00 00 00 movq $0x1,0x10(%rdx,%rsi,1) 119: 48 89 4c 32 18 mov %rcx,0x18(%rdx,%rsi,1) 11e: 4c 89 74 32 20 mov %r14,0x20(%rdx,%rsi,1) 123: 45 31 ed xor %r13d,%r13d 126: 41 83 fb 01 cmp $0x1,%r11d 12a: 41 0f 94 c5 sete %r13b 12e: 8b 15 00 00 00 00 mov 0x0(%rip),%edx # 134 <synaptics_report_mt_data+0x134> 130: R_X86_64_PC32 __preempt_count-0x4 134: 81 e2 00 01 ff 00 and $0xff0100,%edx 13a: 74 11 je 14d <synaptics_report_mt_data+0x14d> 13c: 81 fa 00 01 00 00 cmp $0x100,%edx 142: 75 5b jne 19f <synaptics_report_mt_data+0x19f> 144: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 14b: 74 52 je 19f <synaptics_report_mt_data+0x19f> 14d: 8b 93 88 14 00 00 mov 0x1488(%rbx),%edx 153: 83 fa 03 cmp $0x3,%edx 156: 75 47 jne 19f <synaptics_report_mt_data+0x19f> 158: 48 8b 93 90 14 00 00 mov 0x1490(%rbx),%rdx 15f: 44 8b 83 8c 14 00 00 mov 0x148c(%rbx),%r8d 166: 49 c1 e0 03 shl $0x3,%r8 16a: 4c 8b 12 mov (%rdx),%r10 16d: 4c 89 d6 mov %r10,%rsi 170: 48 c1 e6 05 shl $0x5,%rsi 174: 4c 8d 4e 28 lea 0x28(%rsi),%r9 178: 4d 39 c1 cmp %r8,%r9 17b: 77 22 ja 19f <synaptics_report_mt_data+0x19f> 17d: 49 ff c2 inc %r10 180: 4c 89 12 mov %r10,(%rdx) 183: 48 c7 44 32 08 05 00 00 00 movq $0x5,0x8(%rdx,%rsi,1) 18c: 48 c7 44 32 10 01 00 00 00 movq $0x1,0x10(%rdx,%rsi,1) 195: 48 89 4c 32 18 mov %rcx,0x18(%rdx,%rsi,1) 19a: 4c 89 74 32 20 mov %r14,0x20(%rdx,%rsi,1) 19f: 41 83 fb 02 cmp $0x2,%r11d 1a3: b9 02 00 00 00 mov $0x2,%ecx 1a8: 44 0f 4d e9 cmovge %ecx,%r13d 1ac: 8b 0d 00 00 00 00 mov 0x0(%rip),%ecx # 1b2 <synaptics_report_mt_data+0x1b2> 1ae: R_X86_64_PC32 __preempt_count-0x4 1b2: 81 e1 00 01 ff 00 and $0xff0100,%ecx 1b8: 74 11 je 1cb <synaptics_report_mt_data+0x1cb> 1ba: 81 f9 00 01 00 00 cmp $0x100,%ecx 1c0: 75 5b jne 21d <synaptics_report_mt_data+0x21d> 1c2: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 1c9: 74 52 je 21d <synaptics_report_mt_data+0x21d> 1cb: 8b 8b 88 14 00 00 mov 0x1488(%rbx),%ecx 1d1: 83 f9 03 cmp $0x3,%ecx 1d4: 75 47 jne 21d <synaptics_report_mt_data+0x21d> 1d6: 48 8b 8b 90 14 00 00 mov 0x1490(%rbx),%rcx 1dd: 44 8b 8b 8c 14 00 00 mov 0x148c(%rbx),%r9d 1e4: 49 c1 e1 03 shl $0x3,%r9 1e8: 48 8b 31 mov (%rcx),%rsi 1eb: 48 89 f2 mov %rsi,%rdx 1ee: 48 c1 e2 05 shl $0x5,%rdx 1f2: 4c 8d 42 28 lea 0x28(%rdx),%r8 1f6: 4d 39 c8 cmp %r9,%r8 1f9: 77 22 ja 21d <synaptics_report_mt_data+0x21d> 1fb: 48 ff c6 inc %rsi 1fe: 48 89 31 mov %rsi,(%rcx) 201: 48 c7 44 11 08 05 00 00 00 movq $0x5,0x8(%rcx,%rdx,1) 20a: 48 c7 44 11 10 00 00 00 00 movq $0x0,0x10(%rcx,%rdx,1) 213: 4c 89 6c 11 18 mov %r13,0x18(%rcx,%rdx,1) 218: 4c 89 74 11 20 mov %r14,0x20(%rcx,%rdx,1) 21d: 4d 85 ed test %r13,%r13 220: 48 89 7c 24 18 mov %rdi,0x18(%rsp) 225: 44 89 5c 24 0c mov %r11d,0xc(%rsp) 22a: 0f 84 85 00 00 00 je 2b5 <synaptics_report_mt_data+0x2b5> 230: 41 0f b7 0f movzwl (%r15),%ecx 234: 66 89 4c 24 28 mov %cx,0x28(%rsp) 239: 66 b9 e0 16 mov $0x16e0,%cx 23d: 66 ba e0 16 mov $0x16e0,%dx 241: 66 41 2b 57 04 sub 0x4(%r15),%dx 246: 66 89 54 24 2a mov %dx,0x2a(%rsp) 24b: 41 83 fb 01 cmp $0x1,%r11d 24f: 4c 89 7c 24 10 mov %r15,0x10(%rsp) 254: 0f 85 c8 00 00 00 jne 322 <synaptics_report_mt_data+0x322> 25a: 8b 0d 00 00 00 00 mov 0x0(%rip),%ecx # 260 <synaptics_report_mt_data+0x260> 25c: R_X86_64_PC32 __preempt_count-0x4 260: 81 e1 00 01 ff 00 and $0xff0100,%ecx 266: 74 19 je 281 <synaptics_report_mt_data+0x281> 268: 81 f9 00 01 00 00 cmp $0x100,%ecx 26e: 0f 85 15 01 00 00 jne 389 <synaptics_report_mt_data+0x389> 274: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 27b: 0f 84 08 01 00 00 je 389 <synaptics_report_mt_data+0x389> 281: 8b 8b 88 14 00 00 mov 0x1488(%rbx),%ecx 287: 83 f9 02 cmp $0x2,%ecx 28a: 0f 85 f9 00 00 00 jne 389 <synaptics_report_mt_data+0x389> 290: 48 8b 8b 90 14 00 00 mov 0x1490(%rbx),%rcx 297: 48 8b 11 mov (%rcx),%rdx 29a: 48 8d 72 01 lea 0x1(%rdx),%rsi 29e: 8b bb 8c 14 00 00 mov 0x148c(%rbx),%edi 2a4: 48 39 fe cmp %rdi,%rsi 2a7: 0f 83 dc 00 00 00 jae 389 <synaptics_report_mt_data+0x389> 2ad: 48 89 31 mov %rsi,(%rcx) 2b0: e9 cf 00 00 00 jmp 384 <synaptics_report_mt_data+0x384> 2b5: 8b 0d 00 00 00 00 mov 0x0(%rip),%ecx # 2bb <synaptics_report_mt_data+0x2bb> 2b7: R_X86_64_PC32 __preempt_count-0x4 2bb: 81 e1 00 01 ff 00 and $0xff0100,%ecx 2c1: 74 11 je 2d4 <synaptics_report_mt_data+0x2d4> 2c3: 81 f9 00 01 00 00 cmp $0x100,%ecx 2c9: 75 35 jne 300 <synaptics_report_mt_data+0x300> 2cb: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 2d2: 74 2c je 300 <synaptics_report_mt_data+0x300> 2d4: 8b 8b 88 14 00 00 mov 0x1488(%rbx),%ecx 2da: 83 f9 02 cmp $0x2,%ecx 2dd: 75 21 jne 300 <synaptics_report_mt_data+0x300> 2df: 48 8b 8b 90 14 00 00 mov 0x1490(%rbx),%rcx 2e6: 48 8b 11 mov (%rcx),%rdx 2e9: 48 8d 72 01 lea 0x1(%rdx),%rsi 2ed: 8b bb 8c 14 00 00 mov 0x148c(%rbx),%edi 2f3: 48 39 fe cmp %rdi,%rsi 2f6: 73 08 jae 300 <synaptics_report_mt_data+0x300> 2f8: 48 89 31 mov %rsi,(%rcx) 2fb: 4c 89 74 d1 08 mov %r14,0x8(%rcx,%rdx,8) 300: 8b 40 20 mov 0x20(%rax),%eax 303: 01 c0 add %eax,%eax 305: 44 8d 04 80 lea (%rax,%rax,4),%r8d 309: 48 8d 74 24 20 lea 0x20(%rsp),%rsi 30e: 48 8d 54 24 28 lea 0x28(%rsp),%rdx 313: 4c 89 e7 mov %r12,%rdi 316: 31 c9 xor %ecx,%ecx 318: e8 00 00 00 00 call 31d <synaptics_report_mt_data+0x31d> 319: R_X86_64_PLT32 input_mt_assign_slots-0x4 31d: e9 ae 01 00 00 jmp 4d0 <synaptics_report_mt_data+0x4d0> 322: 0f b7 50 54 movzwl 0x54(%rax),%edx 326: 66 89 54 24 2c mov %dx,0x2c(%rsp) 32b: 66 2b 48 58 sub 0x58(%rax),%cx 32f: 66 89 4c 24 2e mov %cx,0x2e(%rsp) 334: 8b 0d 00 00 00 00 mov 0x0(%rip),%ecx # 33a <synaptics_report_mt_data+0x33a> 336: R_X86_64_PC32 __preempt_count-0x4 33a: 41 83 fb 02 cmp $0x2,%r11d 33e: 0f 8c fd 01 00 00 jl 541 <synaptics_report_mt_data+0x541> 344: 81 e1 00 01 ff 00 and $0xff0100,%ecx 34a: 74 11 je 35d <synaptics_report_mt_data+0x35d> 34c: 81 f9 00 01 00 00 cmp $0x100,%ecx 352: 75 35 jne 389 <synaptics_report_mt_data+0x389> 354: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 35b: 74 2c je 389 <synaptics_report_mt_data+0x389> 35d: 8b 8b 88 14 00 00 mov 0x1488(%rbx),%ecx 363: 83 f9 02 cmp $0x2,%ecx 366: 75 21 jne 389 <synaptics_report_mt_data+0x389> 368: 48 8b 8b 90 14 00 00 mov 0x1490(%rbx),%rcx 36f: 48 8b 11 mov (%rcx),%rdx 372: 48 8d 72 01 lea 0x1(%rdx),%rsi 376: 8b bb 8c 14 00 00 mov 0x148c(%rbx),%edi 37c: 48 39 fe cmp %rdi,%rsi 37f: 73 08 jae 389 <synaptics_report_mt_data+0x389> 381: 48 89 31 mov %rsi,(%rcx) 384: 4c 89 74 d1 08 mov %r14,0x8(%rcx,%rdx,8) 389: 8b 40 20 mov 0x20(%rax),%eax 38c: 01 c0 add %eax,%eax 38e: 44 8d 04 80 lea (%rax,%rax,4),%r8d 392: 48 8d 74 24 20 lea 0x20(%rsp),%rsi 397: 48 8d 54 24 28 lea 0x28(%rsp),%rdx 39c: 4c 89 e7 mov %r12,%rdi 39f: 44 89 e9 mov %r13d,%ecx 3a2: e8 00 00 00 00 call 3a7 <synaptics_report_mt_data+0x3a7> 3a3: R_X86_64_PLT32 input_mt_assign_slots-0x4 3a7: 49 ff cd dec %r13 3aa: 45 31 ff xor %r15d,%r15d 3ad: eb 04 jmp 3b3 <synaptics_report_mt_data+0x3b3> 3af: 90 nop 3b0: 49 ff c7 inc %r15 3b3: 42 8b 4c bc 20 mov 0x20(%rsp,%r15,4),%ecx 3b8: 4c 89 e7 mov %r12,%rdi 3bb: be 03 00 00 00 mov $0x3,%esi 3c0: ba 2f 00 00 00 mov $0x2f,%edx 3c5: e8 00 00 00 00 call 3ca <synaptics_report_mt_data+0x3ca> 3c6: R_X86_64_PLT32 input_event-0x4 3ca: 4c 89 e7 mov %r12,%rdi 3cd: 31 f6 xor %esi,%esi 3cf: ba 01 00 00 00 mov $0x1,%edx 3d4: e8 00 00 00 00 call 3d9 <synaptics_report_mt_data+0x3d9> 3d5: R_X86_64_PLT32 input_mt_report_slot_state-0x4 3d9: 42 0f bf 4c bc 28 movswl 0x28(%rsp,%r15,4),%ecx 3df: 4c 89 e7 mov %r12,%rdi 3e2: be 03 00 00 00 mov $0x3,%esi 3e7: ba 35 00 00 00 mov $0x35,%edx 3ec: e8 00 00 00 00 call 3f1 <synaptics_report_mt_data+0x3f1> 3ed: R_X86_64_PLT32 input_event-0x4 3f1: 42 0f bf 4c bc 2a movswl 0x2a(%rsp,%r15,4),%ecx 3f7: 4c 89 e7 mov %r12,%rdi 3fa: be 03 00 00 00 mov $0x3,%esi 3ff: ba 36 00 00 00 mov $0x36,%edx 404: e8 00 00 00 00 call 409 <synaptics_report_mt_data+0x409> 405: R_X86_64_PLT32 input_event-0x4 409: 4a 8b 44 fc 30 mov 0x30(%rsp,%r15,8),%rax 40e: 8b 48 08 mov 0x8(%rax),%ecx 411: 4c 89 e7 mov %r12,%rdi 414: be 03 00 00 00 mov $0x3,%esi 419: ba 3a 00 00 00 mov $0x3a,%edx 41e: e8 00 00 00 00 call 423 <synaptics_report_mt_data+0x423> 41f: R_X86_64_PLT32 input_event-0x4 423: 8b 05 00 00 00 00 mov 0x0(%rip),%eax # 429 <synaptics_report_mt_data+0x429> 425: R_X86_64_PC32 __preempt_count-0x4 429: 25 00 01 ff 00 and $0xff0100,%eax 42e: 4d 39 fd cmp %r15,%r13 431: 74 58 je 48b <synaptics_report_mt_data+0x48b> 433: 85 c0 test %eax,%eax 435: 74 18 je 44f <synaptics_report_mt_data+0x44f> 437: 3d 00 01 00 00 cmp $0x100,%eax 43c: 0f 85 6e ff ff ff jne 3b0 <synaptics_report_mt_data+0x3b0> 442: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 449: 0f 84 61 ff ff ff je 3b0 <synaptics_report_mt_data+0x3b0> 44f: 8b 83 88 14 00 00 mov 0x1488(%rbx),%eax 455: 83 f8 02 cmp $0x2,%eax 458: 0f 85 52 ff ff ff jne 3b0 <synaptics_report_mt_data+0x3b0> 45e: 48 8b 83 90 14 00 00 mov 0x1490(%rbx),%rax 465: 48 8b 08 mov (%rax),%rcx 468: 48 8d 51 01 lea 0x1(%rcx),%rdx 46c: 8b b3 8c 14 00 00 mov 0x148c(%rbx),%esi 472: 48 39 f2 cmp %rsi,%rdx 475: 0f 83 35 ff ff ff jae 3b0 <synaptics_report_mt_data+0x3b0> 47b: 48 89 10 mov %rdx,(%rax) 47e: 4c 89 74 c8 08 mov %r14,0x8(%rax,%rcx,8) 483: 49 ff c7 inc %r15 486: e9 28 ff ff ff jmp 3b3 <synaptics_report_mt_data+0x3b3> 48b: 85 c0 test %eax,%eax 48d: 4c 8b 7c 24 10 mov 0x10(%rsp),%r15 492: 74 10 je 4a4 <synaptics_report_mt_data+0x4a4> 494: 3d 00 01 00 00 cmp $0x100,%eax 499: 75 35 jne 4d0 <synaptics_report_mt_data+0x4d0> 49b: 83 bb ac 14 00 00 00 cmpl $0x0,0x14ac(%rbx) 4a2: 74 2c je 4d0 <synaptics_report_mt_data+0x4d0> 4a4: 8b 83 88 14 00 00 mov 0x1488(%rbx),%eax 4aa: 83 f8 02 cmp $0x2,%eax 4ad: 75 21 jne 4d0 <synaptics_report_mt_data+0x4d0> 4af: 48 8b 83 90 14 00 00 mov 0x1490(%rbx),%rax 4b6: 48 8b 08 mov (%rax),%rcx 4b9: 48 8d 51 01 lea 0x1(%rcx),%rdx 4bd: 8b b3 8c 14 00 00 mov 0x148c(%rbx),%esi 4c3: 48 39 f2 cmp %rsi,%rdx 4c6: 73 08 jae 4d0 <synaptics_report_mt_data+0x4d0> 4c8: 48 89 10 mov %rdx,(%rax) 4cb: 4c 89 74 c8 08 mov %r14,0x8(%rax,%rcx,8) 4d0: 4c 89 e7 mov %r12,%rdi 4d3: e8 00 00 00 00 call 4d8 <synaptics_report_mt_data+0x4d8> 4d4: R_X86_64_PLT32 input_mt_drop_unused-0x4 4d8: 4c 89 e7 mov %r12,%rdi 4db: 31 f6 xor %esi,%esi 4dd: e8 00 00 00 00 call 4e2 <synaptics_report_mt_data+0x4e2> 4de: R_X86_64_PLT32 input_mt_report_pointer_emulation-0x4 4e2: 4c 89 e7 mov %r12,%rdi 4e5: 8b 74 24 0c mov 0xc(%rsp),%esi 4e9: e8 00 00 00 00 call 4ee <synaptics_report_mt_data+0x4ee> 4ea: R_X86_64_PLT32 input_mt_report_finger_count-0x4 4ee: 48 8b 7c 24 18 mov 0x18(%rsp),%rdi 4f3: 4c 89 fe mov %r15,%rsi 4f6: e8 00 00 00 00 call 4fb <synaptics_report_mt_data+0x4fb> 4f7: R_X86_64_PLT32 .text.synaptics_report_buttons-0x4 4fb: 4c 89 e7 mov %r12,%rdi 4fe: 31 f6 xor %esi,%esi 500: 31 d2 xor %edx,%edx 502: 31 c9 xor %ecx,%ecx 504: e8 00 00 00 00 call 509 <synaptics_report_mt_data+0x509> 505: R_X86_64_PLT32 input_event-0x4 509: 48 8b 05 00 00 00 00 mov 0x0(%rip),%rax # 510 <synaptics_report_mt_data+0x510> 50c: R_X86_64_PC32 __stack_chk_guard-0x4 510: 48 3b 44 24 40 cmp 0x40(%rsp),%rax 515: 75 25 jne 53c <synaptics_report_mt_data+0x53c> 517: 48 8d 65 d8 lea -0x28(%rbp),%rsp 51b: 5b pop %rbx 51c: 41 5c pop %r12 51e: 41 5d pop %r13 520: 41 5e pop %r14 522: 41 5f pop %r15 524: 5d pop %rbp 525: 31 c0 xor %eax,%eax 527: 31 c9 xor %ecx,%ecx 529: 31 ff xor %edi,%edi 52b: 31 d2 xor %edx,%edx 52d: 31 f6 xor %esi,%esi 52f: 45 31 c0 xor %r8d,%r8d 532: 45 31 c9 xor %r9d,%r9d 535: 45 31 d2 xor %r10d,%r10d 538: 45 31 db xor %r11d,%r11d 53b: c3 ret 53c: e8 00 00 00 00 call 541 <synaptics_report_mt_data+0x541> 53d: R_X86_64_PLT32 __stack_chk_fail-0x4 541: 8b 83 88 14 00 00 mov 0x1488(%rbx),%eax 547: 48 8b 83 90 14 00 00 mov 0x1490(%rbx),%rax 54e: 48 ff 00 incq (%rax) > Also, if you happen to have CONFIG_DEBUG_INFO enabled, the line number > of that last branch: > > addr2line -fpie vmlinux.o.orig -j .text.synaptics_report_mt_data 0x33e That configuration does have debug info enabled but... $ addr2line -fpie vmlinux.o.orig -j .text.synaptics_report_mt_data 0x33e synaptics_report_mt_data at ld-temp.o:? Unfortunately, I am not sure how well LTO preserves debug info; IIUC, debug info in LLVM is best effort, optimizations may or may not update the info throughout their transformations, especially by the time the LTO pipeline happens. Cheers, Nathan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-29 20:06 ` Nathan Chancellor @ 2025-03-30 2:44 ` Josh Poimboeuf 2025-03-30 19:38 ` Nathan Chancellor 0 siblings, 1 reply; 7+ messages in thread From: Josh Poimboeuf @ 2025-03-30 2:44 UTC (permalink / raw) To: Nathan Chancellor Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Sat, Mar 29, 2025 at 01:06:56PM -0700, Nathan Chancellor wrote: > On Fri, Mar 28, 2025 at 09:46:06PM -0700, Josh Poimboeuf wrote: > > On Fri, Mar 28, 2025 at 04:24:49PM -0700, Nathan Chancellor wrote: > > > vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x33e: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x254: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1d4: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1b8: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x156: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x13a: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xda: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xbe: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x63: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x48: (branch) > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x0: <=== (sym) > > > ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --static-call --uaccess --noinstr --link vmlinux.o.orig -o vmlinux.o > > > > Nice! Can you share the disassembly of the function? > > Sure thing! > > > objdump -drw -j .text.synaptics_report_mt_data vmlinux.o.orig > > 0000000000000000 <synaptics_report_mt_data>: This is KCOV leaving dead code again. I thought I had silenced those with 6b023c784204 ("objtool: Silence more KCOV warnings") but it looks like I mixed up GCOV_KERNEL with KCOV. Can you confirm this fixes? diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index b93597420daf..4d543054f723 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -275,7 +275,7 @@ objtool-args-$(CONFIG_MITIGATION_SLS) += --sls objtool-args-$(CONFIG_STACK_VALIDATION) += --stackval objtool-args-$(CONFIG_HAVE_STATIC_CALL_INLINE) += --static-call objtool-args-$(CONFIG_HAVE_UACCESS_VALIDATION) += --uaccess -objtool-args-$(CONFIG_GCOV_KERNEL) += --no-unreachable +objtool-args-$(or $(CONFIG_GCOV_KERNEL),$(CONFIG_KCOV)) += --no-unreachable objtool-args-$(CONFIG_PREFIX_SYMBOLS) += --prefix=$(CONFIG_FUNCTION_PADDING_BYTES) objtool-args-$(CONFIG_OBJTOOL_WERROR) += --Werror ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock 2025-03-30 2:44 ` Josh Poimboeuf @ 2025-03-30 19:38 ` Nathan Chancellor 0 siblings, 0 replies; 7+ messages in thread From: Nathan Chancellor @ 2025-03-30 19:38 UTC (permalink / raw) To: Josh Poimboeuf Cc: kernel test robot, llvm, oe-kbuild-all, linux-kernel, x86, Ingo Molnar On Sat, Mar 29, 2025 at 07:44:26PM -0700, Josh Poimboeuf wrote: > On Sat, Mar 29, 2025 at 01:06:56PM -0700, Nathan Chancellor wrote: > > On Fri, Mar 28, 2025 at 09:46:06PM -0700, Josh Poimboeuf wrote: > > > On Fri, Mar 28, 2025 at 04:24:49PM -0700, Nathan Chancellor wrote: > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data: unexpected end of section .text.synaptics_report_mt_data > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x33e: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x254: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1d4: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x1b8: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x156: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x13a: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xda: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0xbe: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x63: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x48: (branch) > > > > vmlinux.o: warning: objtool: synaptics_report_mt_data+0x0: <=== (sym) > > > > ./tools/objtool/objtool --hacks=jump_label --hacks=noinstr --static-call --uaccess --noinstr --link vmlinux.o.orig -o vmlinux.o > > > > > > Nice! Can you share the disassembly of the function? > > > > Sure thing! > > > > > objdump -drw -j .text.synaptics_report_mt_data vmlinux.o.orig > > > > 0000000000000000 <synaptics_report_mt_data>: > > This is KCOV leaving dead code again. I thought I had silenced those > with > > 6b023c784204 ("objtool: Silence more KCOV warnings") > > but it looks like I mixed up GCOV_KERNEL with KCOV. > > Can you confirm this fixes? Can confirm, that makes both warnings disappear in this configuration. > diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib > index b93597420daf..4d543054f723 100644 > --- a/scripts/Makefile.lib > +++ b/scripts/Makefile.lib > @@ -275,7 +275,7 @@ objtool-args-$(CONFIG_MITIGATION_SLS) += --sls > objtool-args-$(CONFIG_STACK_VALIDATION) += --stackval > objtool-args-$(CONFIG_HAVE_STATIC_CALL_INLINE) += --static-call > objtool-args-$(CONFIG_HAVE_UACCESS_VALIDATION) += --uaccess > -objtool-args-$(CONFIG_GCOV_KERNEL) += --no-unreachable > +objtool-args-$(or $(CONFIG_GCOV_KERNEL),$(CONFIG_KCOV)) += --no-unreachable > objtool-args-$(CONFIG_PREFIX_SYMBOLS) += --prefix=$(CONFIG_FUNCTION_PADDING_BYTES) > objtool-args-$(CONFIG_OBJTOOL_WERROR) += --Werror > ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-03-30 19:38 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-03-28 14:49 [tip:objtool/urgent 9/23] vmlinux.o: warning: objtool: cdns_mrvl_xspi_setup_clock: unexpected end of section .text.cdns_mrvl_xspi_setup_clock kernel test robot 2025-03-28 16:31 ` Josh Poimboeuf 2025-03-28 23:24 ` Nathan Chancellor 2025-03-29 4:46 ` Josh Poimboeuf 2025-03-29 20:06 ` Nathan Chancellor 2025-03-30 2:44 ` Josh Poimboeuf 2025-03-30 19:38 ` Nathan Chancellor
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox