lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Mon, 7 Aug 2023 19:35:05 -0700
From:   Dexuan-Linux Cui <dexuan.linux@...il.com>
To:     Wei Liu <wei.liu@...nel.org>
Cc:     Stephen Rothwell <sfr@...b.auug.org.au>,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
        Linux Next Mailing List <linux-next@...r.kernel.org>,
        Dexuan Cui <decui@...rosoft.com>, Tianyu.Lan@...rosoft.com
Subject: Re: linux-next: build failure after merge of the hyperv tree

On Sun, Aug 6, 2023 at 10:39 PM Wei Liu <wei.liu@...nel.org> wrote:
>
> On Mon, Aug 07, 2023 at 02:22:38PM +1000, Stephen Rothwell wrote:
> > Hi all,
> >
> > After merging the hyperv tree, today's linux-next build (x86_64
> > allmodconfig) failed like this:
> >
> > drivers/pci/controller/pci-hyperv.o: warning: objtool: .altinstr_replacement+0x0: weirdly overlapping alternative! 11 != 6
> > drivers/hv/hv_balloon.o: warning: objtool: .altinstr_replacement+0x0: weirdly overlapping alternative! 11 != 6
> > drivers/hv/hv_vmbus.o: warning: objtool: .altinstr_replacement+0x3: weirdly overlapping alternative! 10 != 5
> > vmlinux.o: warning: objtool: .altinstr_replacement+0x633: weirdly overlapping alternative! 11 != 6
> > incomplete ORC unwind tables in file: vmlinux
> > Failed to sort kernel tables
> >
> > I have no idea what caused this.

Hi Stephen,
My kernel source was checked out from the Hyper-V tree's hyperv-next
branch last Friday, which had Tianyu's 8 patches.

I'm able to repro the same build failure in a Ubuntu 22.04 VM with
gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4:

I run the below commands:
make mrproper
make allmodconfig
make -j128
make -j128

...
  LD [M]  net/qrtr/qrtr-tun.ko
  LD [M]  net/qrtr/qrtr-mhi.ko
  LD [M]  virt/lib/irqbypass.ko
  LD [M]  arch/x86/video/fbdev.ko
make: *** [Makefile:234: __sub-make] Error 2

make -j128
  DESCEND objtool
  INSTALL libsubcmd_headers
  CALL    scripts/checksyscalls.sh
  CHK     kernel/kheaders_data.tar.xz
  UPD     include/generated/utsversion.h
  CC      init/version-timestamp.o
  LD      .tmp_vmlinux.kallsyms1
  NM      .tmp_vmlinux.kallsyms1.syms
  KSYMS   .tmp_vmlinux.kallsyms1.S
  AS      .tmp_vmlinux.kallsyms1.S
  LD      .tmp_vmlinux.kallsyms2
  NM      .tmp_vmlinux.kallsyms2.syms
  KSYMS   .tmp_vmlinux.kallsyms2.S
  AS      .tmp_vmlinux.kallsyms2.S
  LD      vmlinux
  NM      System.map
  SORTTAB vmlinux
incomplete ORC unwind tables in file: vmlinux
Failed to sort kernel tables
make[2]: *** [scripts/Makefile.vmlinux:36: vmlinux] Error 1
make[2]: *** Deleting file 'vmlinux'
make[1]: *** [/opt/linux-next/Makefile:1250: vmlinux] Error 2
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:234: __sub-make] Error 2

If I revert Tianyu's patches by "git diff v6.5-rc4 | patch -Rp1",
the build can succeed.

If I apply the the patches, I get the same failure:

drivers/hv/hv_balloon.o: warning: objtool: .altinstr_replacement+0x0:
weirdly overlapping alternative! 11 != 6
...
drivers/pci/controller/pci-hyperv.o: warning: objtool:
.altinstr_replacement+0x0: weirdly overlapping alternative! 11 != 6
...
drivers/hv/hv_vmbus.o: warning: objtool: .altinstr_replacement+0x3:
weirdly overlapping alternative! 10 != 5
...
  AR      built-in.a
  AR      vmlinux.a
  LD      vmlinux.o
vmlinux.o: warning: objtool: .altinstr_replacement+0x633: weirdly
overlapping alternative! 11 != 6
  OBJCOPY modules.builtin.modinfo
  GEN     modules.builtin
  GEN     .vmlinux.objs
  MODPOST Module.symvers
  CC      .vmlinux.export.o
  UPD     include/generated/utsversion.h
  CC      init/version-timestamp.o
  LD      .tmp_vmlinux.kallsyms1
  NM      .tmp_vmlinux.kallsyms1.syms
  KSYMS   .tmp_vmlinux.kallsyms1.S
  AS      .tmp_vmlinux.kallsyms1.S
  LD      .tmp_vmlinux.kallsyms2
  NM      .tmp_vmlinux.kallsyms2.syms
  KSYMS   .tmp_vmlinux.kallsyms2.S
  AS      .tmp_vmlinux.kallsyms2.S
  LD      vmlinux
  NM      System.map
  SORTTAB vmlinux
incomplete ORC unwind tables in file: vmlinux
Failed to sort kernel tables
make[2]: *** [scripts/Makefile.vmlinux:36: vmlinux] Error 1
make[2]: *** Deleting file 'vmlinux'
make[1]: *** [/opt/linux-next/Makefile:1250: vmlinux] Error 2
make[1]: *** Waiting for unfinished jobs....
...
make: *** [Makefile:234: __sub-make] Error 2

It turns out that I already made a fix
https://github.com/dcui/linux/commit/c4db45f6256248435b2a303b264ecbb41320c41d
which can fix the build failure and fix a crash issue (see
https://lwn.net/ml/linux-kernel/SA1PR21MB1335A21D5D037FE88D9CF820BF0EA@SA1PR21MB1335.namprd21.prod.outlook.com/
)

Thanks,
Dexuan

> /me scratches head.
>
> > I have used the hyperv tree from next-20230804 for today.
>
> I've reverted that series from my tree. Thanks for the heads up.
>
> Thanks,
> Wei.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ