diff options
author | Alexandre Ghiti <alexghiti@rivosinc.com> | 2024-02-29 13:10:56 +0100 |
---|---|---|
committer | Palmer Dabbelt <palmer@rivosinc.com> | 2024-04-17 03:27:47 +0200 |
commit | c97bf629963e52b205ed5fbaf151e5bd342f9c63 (patch) | |
tree | 87bc3f31fc0badf08ea02ae6516ad49055cdcf6c /kernel/sched | |
parent | riscv: Remove superfluous smp_mb() (diff) | |
download | linux-c97bf629963e52b205ed5fbaf151e5bd342f9c63.tar.xz linux-c97bf629963e52b205ed5fbaf151e5bd342f9c63.zip |
riscv: Fix text patching when IPI are used
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@rivosinc.com>
Signed-off-by: Björn Töpel <bjorn@rivosinc.com>
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
Reviewed-by: Andrea Parri <parri.andrea@gmail.com>
Link: https://lore.kernel.org/r/20240229121056.203419-3-alexghiti@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Diffstat (limited to 'kernel/sched')
0 files changed, 0 insertions, 0 deletions