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] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHVXubgZ+Dwx70vU03R9MZ7BjkzbdR21y-Ort6pBngFmFYs-uw@mail.gmail.com>
Date: Mon, 7 Apr 2025 10:15:11 +0200
From: Alexandre Ghiti <alexghiti@...osinc.com>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: Alexandre Ghiti <alex@...ti.fr>, Ard Biesheuvel <ardb@...nel.org>, 
	Paul Walmsley <paul.walmsley@...ive.com>, Palmer Dabbelt <palmer@...belt.com>, 
	Björn Töpel <bjorn@...osinc.com>, 
	Nathan Chancellor <nathan@...nel.org>, Nicolas Schier <nicolas@...sle.eu>, 
	Charlie Jenkins <charlie@...osinc.com>, linux-kernel@...r.kernel.org, 
	linux-riscv@...ts.infradead.org, linux-kbuild@...r.kernel.org
Subject: Re: [PATCH v2] scripts: Do not strip .rela.dyn section

Hi Masahiro,

On Fri, Apr 4, 2025 at 5:25 PM Masahiro Yamada <masahiroy@...nel.org> wrote:
>
> On Fri, Apr 4, 2025 at 12:45 AM Alexandre Ghiti <alex@...ti.fr> wrote:
> >
> > Hi Ard,
> >
> > On 03/04/2025 17:11, Ard Biesheuvel wrote:
> > > On Thu, 3 Apr 2025 at 16:42, Alexandre Ghiti <alexghiti@...osinc.com> wrote:
> > >> riscv uses the .rela.dyn section to relocate the kernel at runtime but
> > >> that section is stripped from vmlinux. That prevents kexec to
> > >> successfully load vmlinux since it does not contain the relocations info
> > >> needed.
> > >>
> > > Maybe explain that .rela.dyn contains runtime relocations, which are
> > > only emitted if they are actually needed - as opposed to the static
> > > relocations that are not emitted as SHF_ALLOC sections, and are not
> > > considered to be part of the runtime image in the first place.
> >
> >
> > Ok I'll do.
> >
> >
> > > It
> > > would be nice if we could use --remove-relocations= here, which only
> > > removes static relocations, but unfortunately, llvm-objcopy does not
> > > support this.
> > >
> > > Also, I wonder if this should apply to all of .rel.dyn, .rela.dyn and
> > > .relr.dyn, as they all carry runtime relocations.
> >
> >
> > Ok, I'll add them to the next version.
> >
> >
> > >
> > > Finally, I'd be curious to know why RISC-V relies on --emit-relocs in
> > > the first place? Is the relocs check really needed? If not, it would
> > > be a nice opportunity to get rid of Makefile.postlink entirely.
> >
> >
> > So I had to check and it happens that this was an issue with the
> > toolchain, I should check if that still happens with newer ones.
> >
> > commit 559d1e45a16dcf1542e430ea3dce9ab625be98d0
> > Author: Alexandre Ghiti <alexghiti@...osinc.com>
> > Date:   Wed Mar 29 06:53:29 2023 +0200
> >
> >      riscv: Use --emit-relocs in order to move .rela.dyn in init
>
>
>
>
> So,
>
> Fixes: 559d1e45a16d ("riscv: Use --emit-relocs in order to move
> .rela.dyn in init")
>
> Is this the correct tag?

This is the initial culprit yes, but if we use this tag, the fix won't
apply. So I decided to pick Ard's patch so that this fix can be easily
backported to 6.14, and I'll come up with a new version for previous
releases. Is that ok with you?

Thanks,

Alex

>
>
>
>
>
> --
> Best Regards
> Masahiro Yamada

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ