linux-next/arch/loongarch
WANG Xuerui 179af5751a LoongArch: KVM: Fix input validation of _kvm_get_cpucfg() & kvm_check_cpucfg()
The range check for the CPUCFG ID is wrong (should have been a ||
instead of &&) and useless in effect, so fix the obvious mistake.

Furthermore, the juggling of the temp return value is unnecessary,
because it is semantically equivalent and more readable to just
return at every switch case's end. This is done too to avoid potential
bugs in the future related to the unwanted complexity.

Also, the return value of _kvm_get_cpucfg is meant to be checked, but
this was not done, so bad CPUCFG IDs wrongly fall back to the default
case and 0 is incorrectly returned; check the return value to fix the
UAPI behavior.

While at it, also remove the redundant range check in kvm_check_cpucfg,
because out-of-range CPUCFG IDs are already rejected by the -EINVAL
as returned by _kvm_get_cpucfg().

Fixes: db1ecca22e ("LoongArch: KVM: Add LSX (128bit SIMD) support")
Fixes: 118e10cd89 ("LoongArch: KVM: Add LASX (256bit SIMD) support")
Reviewed-by: Bibo Mao <maobibo@loongson.cn>
Signed-off-by: WANG Xuerui <git@xen0n.name>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
2024-02-23 14:36:31 +08:00
..
boot LoongArch: dts: Minor whitespace cleanup 2024-02-23 14:36:31 +08:00
configs LoongArch changes for v6.8 2024-01-19 13:30:49 -08:00
crypto crypto: loongarch/crc32 - remove redundant setting of alignmask to 0 2023-10-27 18:04:24 +08:00
include work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
kernel LoongArch: Call early_init_fdt_scan_reserved_mem() earlier 2024-02-23 14:36:31 +08:00
kvm LoongArch: KVM: Fix input validation of _kvm_get_cpucfg() & kvm_check_cpucfg() 2024-02-23 14:36:31 +08:00
lib LoongArch: Add KASAN (Kernel Address Sanitizer) support 2023-09-06 22:54:16 +08:00
mm LoongArch: Fix earlycon parameter if KASAN enabled 2024-02-06 12:32:05 +08:00
net LoongArch: BPF: Prevent out-of-bounds memory access 2024-01-17 12:43:13 +08:00
pci LoongArch: Add FDT booting support from efi system table 2022-12-14 08:41:53 +08:00
power LoongArch: Export some arch-specific pm interfaces 2023-06-29 20:58:44 +08:00
vdso LoongArch: vDSO: Disable UBSAN instrumentation 2024-02-06 12:32:05 +08:00
Kbuild LoongArch: Allow device trees be built into the kernel 2024-01-17 12:43:00 +08:00
Kconfig LoongArch: Select HAVE_ARCH_SECCOMP to use the common SECCOMP menu 2024-02-06 12:32:05 +08:00
Kconfig.debug LoongArch: Add prologue unwinder support 2022-08-12 13:10:11 +08:00
Makefile LoongArch: Allow device trees be built into the kernel 2024-01-17 12:43:00 +08:00