All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ard Biesheuvel <ardb@kernel.org>
To: Xi Ruoyao <xry111@xry111.site>
Cc: 陈华才 <chenhuacai@loongson.cn>,
	linux-efi@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	"James E.J. Bottomley" <James.Bottomley@hansenpartnership.com>,
	"Matthew Garrett" <mjg59@srcf.ucam.org>,
	"Peter Jones" <pjones@redhat.com>,
	"Ilias Apalodimas" <ilias.apalodimas@linaro.org>,
	"Heinrich Schuchardt" <heinrich.schuchardt@canonical.com>,
	"AKASHI Takahiro" <takahiro.akashi@linaro.org>,
	"Palmer Dabbelt" <palmer@dabbelt.com>,
	"Atish Patra" <atishp@atishpatra.org>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Lennart Poettering" <lennart@poettering.net>,
	"Jeremy Linton" <jeremy.linton@arm.com>
Subject: Re: [PATCH v4 8/9] loongarch: avoid orphan input sections
Date: Sun, 28 Aug 2022 11:36:52 +0200	[thread overview]
Message-ID: <CAMj1kXGHLans85vpGzY6FbdW0w5DZ0uqT7eEk2yava=udUHY1w@mail.gmail.com> (raw)
In-Reply-To: <adb55eda511ad6de85936dd37f584687a22e7437.camel@xry111.site>

On Sun, 28 Aug 2022 at 05:31, Xi Ruoyao <xry111@xry111.site> wrote:
>
> On Sat, 2022-08-27 at 15:27 +0200, Ard Biesheuvel wrote:
> > It does have a relation: the signing tool will complain because the
> > PE/COFF metadata goes out of sync, like so
> >
> >   SBSIGN  arch/loongarch/boot/vmlinux.efi.signed
> > warning: data remaining[20754944 vs 20755016]: gaps between PE/COFF
> > sections?
> >
> > This is because of the *(.rela.dyn) section created by the linker,
> > which is appended after the .data section, and so the PE/COFF .data
> > section size does not match the file size.
> >
> > *However*, you explained to me that vmlinux is not a PIC binary, and
> > the link should be non-PIE as well. So this looks like another
> > toolchain issue to me, that you may want to look into.
>
> In my builds:
>
> With Binutils 2.39 and GCC 12, vmlinux rela.dyn contains 48 zero bytes
> (or 3 R_LARCH_NONE relocations, which is defined "do thing" and is
> ignored by ld, ld.so, and kernel module loader).
>

But does the ELF psABI for LoongArch describe L_ARCH_NONE as a dynamic
relocation? .rela.dyn typically only contains relocations that are
specified as being suitable for runtime relocation.

> With Binutils trunk and GCC trunk, rela.dyn does not exist in
> vmlinux.(But for using the trunks of Binutils and GCC we'll need to
> either disable CONFIG_MODULES or apply [1].)
>

If this is going to land in v6.1 as well, I suggest to drop the patch
entirely. By the time this gets released, you can document which
minimal toolchain version is required for UEFI secure boot signed
kernels.

> [1]:https://lore.kernel.org/loongarch/20220827175436.156464-1-xry111@xry111.site/T/
>
> --
> Xi Ruoyao <xry111@xry111.site>
> School of Aerospace Science and Technology, Xidian University

WARNING: multiple messages have this Message-ID (diff)
From: Ard Biesheuvel <ardb@kernel.org>
To: Xi Ruoyao <xry111@xry111.site>
Cc: 陈华才 <chenhuacai@loongson.cn>,
	linux-efi@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	"James E.J. Bottomley" <James.Bottomley@hansenpartnership.com>,
	"Matthew Garrett" <mjg59@srcf.ucam.org>,
	"Peter Jones" <pjones@redhat.com>,
	"Ilias Apalodimas" <ilias.apalodimas@linaro.org>,
	"Heinrich Schuchardt" <heinrich.schuchardt@canonical.com>,
	"AKASHI Takahiro" <takahiro.akashi@linaro.org>,
	"Palmer Dabbelt" <palmer@dabbelt.com>,
	"Atish Patra" <atishp@atishpatra.org>,
	"Arnd Bergmann" <arnd@arndb.de>,
	"Lennart Poettering" <lennart@poettering.net>,
	"Jeremy Linton" <jeremy.linton@arm.com>
Subject: Re: [PATCH v4 8/9] loongarch: avoid orphan input sections
Date: Sun, 28 Aug 2022 11:36:52 +0200	[thread overview]
Message-ID: <CAMj1kXGHLans85vpGzY6FbdW0w5DZ0uqT7eEk2yava=udUHY1w@mail.gmail.com> (raw)
In-Reply-To: <adb55eda511ad6de85936dd37f584687a22e7437.camel@xry111.site>

On Sun, 28 Aug 2022 at 05:31, Xi Ruoyao <xry111@xry111.site> wrote:
>
> On Sat, 2022-08-27 at 15:27 +0200, Ard Biesheuvel wrote:
> > It does have a relation: the signing tool will complain because the
> > PE/COFF metadata goes out of sync, like so
> >
> >   SBSIGN  arch/loongarch/boot/vmlinux.efi.signed
> > warning: data remaining[20754944 vs 20755016]: gaps between PE/COFF
> > sections?
> >
> > This is because of the *(.rela.dyn) section created by the linker,
> > which is appended after the .data section, and so the PE/COFF .data
> > section size does not match the file size.
> >
> > *However*, you explained to me that vmlinux is not a PIC binary, and
> > the link should be non-PIE as well. So this looks like another
> > toolchain issue to me, that you may want to look into.
>
> In my builds:
>
> With Binutils 2.39 and GCC 12, vmlinux rela.dyn contains 48 zero bytes
> (or 3 R_LARCH_NONE relocations, which is defined "do thing" and is
> ignored by ld, ld.so, and kernel module loader).
>

But does the ELF psABI for LoongArch describe L_ARCH_NONE as a dynamic
relocation? .rela.dyn typically only contains relocations that are
specified as being suitable for runtime relocation.

> With Binutils trunk and GCC trunk, rela.dyn does not exist in
> vmlinux.(But for using the trunks of Binutils and GCC we'll need to
> either disable CONFIG_MODULES or apply [1].)
>

If this is going to land in v6.1 as well, I suggest to drop the patch
entirely. By the time this gets released, you can document which
minimal toolchain version is required for UEFI secure boot signed
kernels.

> [1]:https://lore.kernel.org/loongarch/20220827175436.156464-1-xry111@xry111.site/T/
>
> --
> Xi Ruoyao <xry111@xry111.site>
> School of Aerospace Science and Technology, Xidian University

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-08-28  9:37 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-27  8:38 [PATCH v4 0/9] efi: implement generic compressed boot support Ard Biesheuvel
2022-08-27  8:38 ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 1/9] efi: name the ARCH-stub.c files uniformly Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 2/9] efi/libstub: add some missing EFI prototypes Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 3/9] efi/libstub: use EFI provided memcpy/memset routines Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 4/9] efi/libstub: move efi_system_table global var into separate object Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 5/9] efi/libstub: implement generic EFI zboot Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 6/9] arm64: efi: enable generic EFI compressed boot Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-31 22:05   ` Jeremy Linton
2022-08-31 22:05     ` Jeremy Linton
2022-09-01  0:48     ` Xi Ruoyao
2022-09-01  0:48       ` Xi Ruoyao
2022-08-27  8:38 ` [PATCH v4 7/9] riscv: " Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27  8:38 ` [PATCH v4 8/9] loongarch: avoid orphan input sections Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-27 10:15   ` 陈华才
2022-08-27 10:15     ` 陈华才
2022-08-27 13:27     ` Ard Biesheuvel
2022-08-27 13:27       ` Ard Biesheuvel
2022-08-28  3:31       ` Xi Ruoyao
2022-08-28  3:31         ` Xi Ruoyao
2022-08-28  9:36         ` Ard Biesheuvel [this message]
2022-08-28  9:36           ` Ard Biesheuvel
2022-08-28  9:44           ` Xi Ruoyao
2022-08-28  9:44             ` Xi Ruoyao
2022-08-29  3:59             ` 陈华才
2022-08-29  3:59               ` 陈华才
2022-08-27  8:38 ` [PATCH v4 9/9] loongarch: efi: enable generic EFI compressed boot Ard Biesheuvel
2022-08-27  8:38   ` Ard Biesheuvel
2022-08-28  9:52   ` Xi Ruoyao
2022-08-28  9:52     ` Xi Ruoyao
2022-08-28 10:57     ` Xi Ruoyao
2022-08-28 10:57       ` Xi Ruoyao
2022-08-29  8:13     ` 陈华才
2022-08-29  8:13       ` 陈华才

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAMj1kXGHLans85vpGzY6FbdW0w5DZ0uqT7eEk2yava=udUHY1w@mail.gmail.com' \
    --to=ardb@kernel.org \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=arnd@arndb.de \
    --cc=atishp@atishpatra.org \
    --cc=chenhuacai@loongson.cn \
    --cc=heinrich.schuchardt@canonical.com \
    --cc=ilias.apalodimas@linaro.org \
    --cc=jeremy.linton@arm.com \
    --cc=lennart@poettering.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=mjg59@srcf.ucam.org \
    --cc=palmer@dabbelt.com \
    --cc=pjones@redhat.com \
    --cc=takahiro.akashi@linaro.org \
    --cc=xry111@xry111.site \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.