Re: [PATCH -fixes] riscv: Fix relocatable kernels with early alternatives using -fno-pie

From: Alexandre Ghiti
Date: Wed May 31 2023 - 03:26:50 EST



On 30/05/2023 22:22, Conor Dooley wrote:
On Tue, May 30, 2023 at 08:04:17PM +0200, Alexandre Ghiti wrote:
Ahah, I think we found the culprit!

With CONFIG_RELOCATABLE, vmlinux is actually stripped from all the
relocations (so that it can be shipped) and vmlinux.relocs is what you
should use instead, since it is just a copy of vmlinux before the
removal of the relocations!
That probably makes us both eejits for not realising sooner...


Ahah, TIL a new word, thanks :)



Tested-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx> # booted on nezha & unmatched

Thanks for your patience here Alex.


So I checked again if the -fno-pie should be applied to mm/dma-noncoherent.c as I suggested, but actually no: errata/thead/errata.c never reaches riscv_noncoherent_supported() in early boot (you can see how 'fragile' it is though and why something needs to be done...).


Oh and I realized that I forgot the Reported-by from Andreas and the Fixes tags, so here they are:

Fixes: 39b33072941f ("riscv: Introduce CONFIG_RELOCATABLE")
Reported-by: Andreas Schwab <schwab@xxxxxxxxxxxxxx>


Thank you too for your patience and your quick answers!

Alex



_______________________________________________
linux-riscv mailing list
linux-riscv@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/linux-riscv