Re: [PATCH 6.1 000/193] 6.1.8-rc1 review

From: Naresh Kamboju
Date: Tue Jan 24 2023 - 10:57:56 EST


On Tue, 24 Jan 2023 at 18:25, Tom Saeger <tom.saeger@xxxxxxxxxx> wrote:
>
> On Tue, Jan 24, 2023 at 05:41:22PM +0530, Naresh Kamboju wrote:
> > Hi Tom,
> >
> > On Tue, 24 Jan 2023 at 01:12, Tom Saeger <tom.saeger@xxxxxxxxxx> wrote:
> > >
> > > On Mon, Jan 23, 2023 at 01:11:32PM -0600, Tom Saeger wrote:
> > > > On Mon, Jan 23, 2023 at 01:39:11PM +0530, Naresh Kamboju wrote:
> > > > > On Sun, 22 Jan 2023 at 20:51, Greg Kroah-Hartman
> > > > >
> > > > > Results from Linaro’s test farm.
> > > > >
> > > > > Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
> > > > >
> > > > > * sh, build
> > > > > - gcc-8-dreamcast_defconfig
> > > > > - gcc-8-microdev_defconfig
> > > >
> > > > Naresh, any chance you could test again adding the following:
> > > >
> > > > diff --git a/arch/sh/kernel/vmlinux.lds.S b/arch/sh/kernel/vmlinux.lds.S
> > > > index 3161b9ccd2a5..b6276a3521d7 100644
> > > > --- a/arch/sh/kernel/vmlinux.lds.S
> > > > +++ b/arch/sh/kernel/vmlinux.lds.S
> > > > @@ -4,6 +4,7 @@
> > > > * Written by Niibe Yutaka and Paul Mundt
> > > > */
> > > > OUTPUT_ARCH(sh)
> > > > +#define RUNTIME_DISCARD_EXIT
> > > > #include <asm/thread_info.h>
> > > > #include <asm/cache.h>
> > > > #include <asm/vmlinux.lds.h>
> > > >
> > > >
> > > > My guess is build environment is using ld < 2.36??
> > > > and this is probably similar to:
> > > > a494398bde27 ("s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36")
> > > > 4b9880dbf3bd ("powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT")
> > > >
> > > >
> > > > Regards,
> > > >
> > > > --Tom
> > > >
> > > > >
> > > > >
> > > > > Build error logs:
> > > > > `.exit.text' referenced in section `__bug_table' of crypto/algboss.o:
> > > > > defined in discarded section `.exit.text' of crypto/algboss.o
> > > > > `.exit.text' referenced in section `__bug_table' of
> > > > > drivers/char/hw_random/core.o: defined in discarded section
> > > > > `.exit.text' of drivers/char/hw_random/core.o
> > > > > make[2]: *** [/builds/linux/scripts/Makefile.vmlinux:34: vmlinux] Error 1
> > >
> > >
> > > This is also occurring in latest upstream:
> >
> > Right !
> > build/gcc-8-dreamcast_defconfig
> > build/gcc-8-microdev_defconfig
> >
> > These build errors started from v6.2-rc2 on the mainline [1] & [2].
> >
> > >
> > > ❯ git describe HEAD
> > > v6.2-rc5-13-g2475bf0250de
> > >
> > > ❯ tuxmake --runtime podman --target-arch sh --toolchain gcc-8 --kconfig microdev_defconfig
> > >
> > > `.exit.text' referenced in section `__bug_table' of crypto/algboss.o: defined in discarded section `.exit.text' of crypto/algboss.o
> > > `.exit.text' referenced in section `__bug_table' of drivers/char/hw_random/core.o: defined in discarded section `.exit.text' of drivers/char/hw_random/core.o
> > > make[2]: *** [/home2/tsaeger/linux/linux-upstream/scripts/Makefile.vmlinux:35: vmlinux] Error 1
> > > make[2]: Target '__default' not remade because of errors.
> > > make[1]: *** [/home2/tsaeger/linux/linux-upstream/Makefile:1264: vmlinux] Error 2
> > > make[1]: Target '__all' not remade because of errors.
> > > make: *** [Makefile:242: __sub-make] Error 2
> > > make: Target '__all' not remade because of errors.
> > >
> > >
> > > FWIW, the above patch resolves this.
> > Yes. Tested and confirmed it fixes the reported problem.
> >
> > > How many more architectures need something similar?
> > Now I see it on sh with gcc-8 only on the mainline.
> >
> > OTOH,
> > It was noticed on earlier stable-rc 5.4 for x86, i386, powerpc, sh and s390.
> >
> > git_describe : v5.4.228-679-g79cbaf4448f3
> > kernel_version: 5.4.230-rc1
> >
> > Regressions found on sh: [1] & [2] mainline and below
> > - build/gcc-8-dreamcast_defconfig
> > - build/gcc-8-microdev_defconfig
> >
> > Regressions found on i386: [3]
> > - build/gcc-8-i386_defconfig
> >
> > Regressions found on powerpc: [4]
> > - build/gcc-8-mpc83xx_defconfig
> > - build/gcc-8-ppc64e_defconfig
> > - build/gcc-8-maple_defconfig
> > - build/gcc-8-ppc6xx_defconfig
> > - build/gcc-8-defconfig
> > - build/gcc-8-tqm8xx_defconfig
> > - build/gcc-8-cell_defconfig
> >
> > Regressions found on s390: [5]
> > - build/gcc-8-defconfig-fe40093d
> >
> > Regressions found on x86_64: [6]
> > - build/gcc-8-x86_64_defconfig
>
> v5.4 needs:
> 84d5f77fc2ee ("x86, vmlinux.lds: Add RUNTIME_DISCARD_EXIT to generic DISCARDS")
>
> which didn't hit Linus's tree until: v5.7-rc1~164^2~1
> This explains why v5.4 blew-up and v5.10 didn't.
>
> I'm testing the following for v5.4
>
> 84d5f77fc2ee ("x86, vmlinux.lds: Add RUNTIME_DISCARD_EXIT to generic DISCARDS")
> This needed a little massaging to apply.
>
> 99cb0d917ffa ("arch: fix broken BuildID for arm64 and riscv")
> 4b9880dbf3bd ("powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT")
> 07b050f9290e ("powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds")
> a494398bde27 ("s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36")
> + the arch/sh patch https://lore.kernel.org/all/9166a8abdc0f979e50377e61780a4bba1dfa2f52.1674518464.git.tom.saeger@xxxxxxxxxx/
>
>
> I'd be grateful if you could confirm - so I can send this full series to
> Greg.
>
> If you'd rather - I can send the patch-series now for testing?

Please send your repo and branch. I will pick up and run tests on it.

- Naresh