linux/arch/riscv
Sean Christopherson 2031f28768 KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused
Add wrappers to acquire/release KVM's SRCU lock when stashing the index
in vcpu->src_idx, along with rudimentary detection of illegal usage,
e.g. re-acquiring SRCU and thus overwriting vcpu->src_idx.  Because the
SRCU index is (currently) either 0 or 1, illegal nesting bugs can go
unnoticed for quite some time and only cause problems when the nested
lock happens to get a different index.

Wrap the WARNs in PROVE_RCU=y, and make them ONCE, otherwise KVM will
likely yell so loudly that it will bring the kernel to its knees.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Tested-by: Fabiano Rosas <farosas@linux.ibm.com>
Message-Id: <20220415004343.2203171-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2022-04-21 13:16:11 -04:00
..
boot RISC-V Patches for the 5.18 Merge Window, Part 2 2022-04-01 13:31:57 -07:00
configs RISC-V: K210 defconfigs: Drop redundant MEMBARRIER=n 2022-03-31 17:19:27 -07:00
errata riscv: errata: alternative: mark vendor_patch_func __initdata 2022-01-09 11:02:46 -08:00
include KVM: RISC-V: Use kvm_vcpu.srcu_idx, drop RISC-V's unnecessary copy 2022-04-21 13:16:10 -04:00
kernel RISC-V Patches for the 5.18 Merge Window, Part 2 2022-04-01 13:31:57 -07:00
kvm KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused 2022-04-21 13:16:11 -04:00
lib riscv: Fixed misaligned memory access. Fixed pointer comparison. 2022-03-10 10:24:04 -08:00
mm RISC-V Patches for the 5.18 Merge Window, Part 1 2022-03-25 10:11:38 -07:00
net riscv: bpf: Fix eBPF's exception tables 2022-01-19 10:50:02 -08:00
Kbuild kbuild: use more subdir- for visiting subdirectories while cleaning 2021-10-24 13:49:46 +09:00
Kconfig RISC-V CPU Idle Support 2022-03-30 16:17:54 -07:00
Kconfig.debug
Kconfig.erratas riscv: alternative only works on !XIP_KERNEL 2022-03-10 10:05:19 -08:00
Kconfig.socs RISC-V CPU Idle Support 2022-03-30 16:17:54 -07:00
Makefile riscv: fix build with binutils 2.38 2022-02-10 09:17:01 -08:00