[PATCH v3 2/2] riscv: Fix text patching when IPI are used

Björn Töpel bjorn at kernel.org
Mon Mar 4 12:24:09 PST 2024


Conor Dooley <conor at kernel.org> writes:

> On Thu, Feb 29, 2024 at 01:10:56PM +0100, Alexandre Ghiti wrote:
>> For now, we use stop_machine() to patch the text and when we use IPIs for
>> remote icache flushes (which is emitted in patch_text_nosync()), the system
>> hangs.
>> 
>> So instead, make sure every CPU executes the stop_machine() patching
>> function and emit a local icache flush there.
>> 
>> Co-developed-by: Björn Töpel <bjorn at rivosinc.com>
>> Signed-off-by: Björn Töpel <bjorn at rivosinc.com>
>> Signed-off-by: Alexandre Ghiti <alexghiti at rivosinc.com>
>> Reviewed-by: Andrea Parri <parri.andrea at gmail.com>
>
> What commit does this fix?

Hmm. The bug is exposed when the AIA IPI are introduced, and used
(instead of the firmware-based).

I'm not sure this is something we'd like backported, but rather a
prerequisite to AIA.

@Anup @Alex WDYT?



More information about the linux-riscv mailing list