[PATCH -fixes] riscv: Fix RISCV_ALTERNATIVE_EARLY

Conor Dooley conor.dooley at microchip.com
Tue Aug 27 23:45:30 PDT 2024


On Tue, Aug 27, 2024 at 11:13:16AM +0200, Alexandre Ghiti wrote:
> Hi Conor,
> 
> On 27/08/2024 10:38, Conor Dooley wrote:
> > On Mon, Aug 26, 2024 at 12:57:37PM +0200, Alexandre Ghiti wrote:
> > > RISCV_ALTERNATIVE_EARLY will issue sbi_ecall() very early in the boot
> > > process, before the first memory mapping is setup so we can't have any
> > > instrumentation happening here.
> > > 
> > > In addition, when the kernel is relocatable, we must also not issue any
> > > relocation this early since they would have been patched virtually only.
> > > 
> > > So, instead of disabling instrumentation for the whole kernel/sbi.c file
> > > and compiling it with -fno-pie, simply move __sbi_ecall() and
> > > __sbi_base_ecall() into their own file where this is fixed.
> > IOW, this should fix the issue that we discussed here
> > https://lore.kernel.org/linux-riscv/abec162e-f3f2-488c-83d9-be17257a5df8@ghiti.fr/
> > also?
> 
> 
> Yes, as a side effect it also fixes TRACEPOINTS + [KASAN|RELOCATABLE] as I
> reported in this thread since I moved the tracepoints in a file where
> instrumentation is disabled and compiled with no-pie.

And it does, so
Closes: https://lore.kernel.org/linux-riscv/20240813-pony-truck-3e7a83e9759e@spud/
Reported-by: Conor Dooley <conor.dooley at microchip.com>
Tested-by: Conor Dooley <conor.dooley at microchip.com>

Cheers,
Conor.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-riscv/attachments/20240828/cff7a89e/attachment.sig>


More information about the linux-riscv mailing list