diff options
author | 2021-03-22 22:26:05 +0800 | |
---|---|---|
committer | 2021-04-26 08:24:57 -0700 | |
commit | 800149a77c2cb8746a94457939b1ba1e37d2c14e (patch) | |
tree | a31cd1e131fc9259b2d7a12b62fe5958587b420b /mm | |
parent | riscv: sifive: Add SiFive alternative ports (diff) | |
download | linux-800149a77c2cb8746a94457939b1ba1e37d2c14e.tar.gz linux-800149a77c2cb8746a94457939b1ba1e37d2c14e.tar.bz2 linux-800149a77c2cb8746a94457939b1ba1e37d2c14e.zip |
riscv: sifive: Apply errata "cip-453" patch
Add sign extension to the $badaddr before addressing the instruction page
fault and instruction access fault to workaround the issue "cip-453".
To avoid affecting the existing code sequence, this patch will creates two
trampolines to add sign extension to the $badaddr. By the "alternative"
mechanism, these two trampolines will replace the original exception
handler of instruction page fault and instruction access fault in the
excp_vect_table. In this case, only the specific SiFive CPU core jumps to
the do_page_fault and do_trap_insn_fault through these two trampolines.
Other CPUs are not affected.
Signed-off-by: Vincent Chen <vincent.chen@sifive.com>
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Diffstat (limited to 'mm')
0 files changed, 0 insertions, 0 deletions