summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYi Xie <xieyi@kylinos.cn>2026-07-09 10:19:47 +0800
committerWei Liu <wei.liu@kernel.org>2026-07-31 20:02:04 +0000
commit22dfdc17ceadd2783a609947af621a7f697b7765 (patch)
tree2c655a57400cbdca9cad8d580bd90867a1986af0
parent72e3b0311aa90568a4b42a64445d1d3e1dc5a34d (diff)
mshv_vtl: bounds-check cpu index in vtl mmap fault handler
cpu is taken from pgoff & 0xffff. cpu_online() does not reject cpu >= nr_cpu_ids, and per_cpu_ptr() can then walk off __per_cpu_offset. Signed-off-by: Yi Xie <xieyi@kylinos.cn> Reviewed-by: Naman Jain <namjain@linux.microsoft.com> Signed-off-by: Wei Liu <wei.liu@kernel.org>
-rw-r--r--drivers/hv/mshv_vtl_main.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hv/mshv_vtl_main.c b/drivers/hv/mshv_vtl_main.c
index 5ba1efb3b4e7..6e3c11c68171 100644
--- a/drivers/hv/mshv_vtl_main.c
+++ b/drivers/hv/mshv_vtl_main.c
@@ -802,7 +802,7 @@ static vm_fault_t mshv_vtl_fault(struct vm_fault *vmf)
int cpu = vmf->pgoff & MSHV_PG_OFF_CPU_MASK;
int real_off = vmf->pgoff >> MSHV_REAL_OFF_SHIFT;
- if (!cpu_online(cpu))
+ if (cpu >= nr_cpu_ids || !cpu_online(cpu))
return VM_FAULT_SIGBUS;
/*
* CPU Hotplug is not supported in VTL2 in OpenHCL, where this kernel driver exists.