]> git.baikalelectronics.ru Git - kernel.git/commit
riscv: Ensure isa-ext static keys are writable
authorAndrew Jones <ajones@ventanamicro.com>
Tue, 16 Aug 2022 16:30:58 +0000 (18:30 +0200)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 17 Aug 2022 01:07:43 +0000 (18:07 -0700)
commit0964b701023bdadd14229ba010a3b063e3d18924
tree322927102327f7ca0989b1b7ba21068df8cc5acc
parent3d7dcb2c5450a57f60c448f42be48fdfe456bfdf
riscv: Ensure isa-ext static keys are writable

riscv_isa_ext_keys[] is an array of static keys used in the unified
ISA extension framework. The keys added to this array may be used
anywhere, including in modules. Ensure the keys remain writable by
placing them in the data section.

The need to change riscv_isa_ext_keys[]'s section was found when the
kvm module started failing to load. Commit a9ce79134f60 ("arch/riscv:
add Zihintpause support") adds a static branch check for a newly
added isa-ext key to cpu_relax(), which kvm uses.

Fixes: 1f5dc5faf6f9 ("riscv: introduce unified static key mechanism for ISA extensions")
Signed-off-by: Andrew Jones <ajones@ventanamicro.com>
Cc: stable@vger.kernel.org
Reported-by: Ron Economos <re@w6rz.net>
Reported-by: Anup Patel <apatel@ventanamicro.com>
Reported-by: Conor Dooley <conor.dooley@microchip.com>
Tested-by: Atish Patra <atishp@rivosinc.com>
Link: https://lore.kernel.org/r/20220816163058.3004536-1-ajones@ventanamicro.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/kernel/cpufeature.c