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

From: Nathan Chancellor
Date: Fri Mar 28 2025 - 19:24:59 EST


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@xxxxxxxxx/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@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/202503282236.UhfRsF3B-lkp@xxxxxxxxx/
> >
> > 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@xxxxxxxxx/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