aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Wing <rew@FreeBSD.org>2023-01-20 10:03:59 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2023-01-26 22:05:13 +0000
commiteb37d3cc565e278d568b0454fc3b2b9cab4c3518 (patch)
tree965dd4acf0868fea1696a176c466d34616003a96
parentaca0d0b421d3ee7b844edf949902c0c189279ad7 (diff)
downloadsrc-eb37d3cc565e278d568b0454fc3b2b9cab4c3518.tar.gz
src-eb37d3cc565e278d568b0454fc3b2b9cab4c3518.zip
vmm: take exclusive mem_segs_lock when (un)assigning ppt dev
PR: 268744 Reported by: mmatalka@gmail.com Reviewed by: corvink, markj, jhb Fixes: 67b69e76e8ee ("vmm: Use an sx lock to protect the memory map.") Differential Revision: https://reviews.freebsd.org/D37962 (cherry picked from commit ccf32a68f821c5c724fb9a5b4b9576925122292f)
-rw-r--r--sys/amd64/vmm/vmm_dev.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/amd64/vmm/vmm_dev.c b/sys/amd64/vmm/vmm_dev.c
index 1b8b1e6d388f..571e287dc4b6 100644
--- a/sys/amd64/vmm/vmm_dev.c
+++ b/sys/amd64/vmm/vmm_dev.c
@@ -476,6 +476,8 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag,
case VM_ALLOC_MEMSEG_FBSD12:
#endif
case VM_ALLOC_MEMSEG:
+ case VM_BIND_PPTDEV:
+ case VM_UNBIND_PPTDEV:
case VM_MMAP_MEMSEG:
case VM_MUNMAP_MEMSEG:
case VM_REINIT:
@@ -488,8 +490,6 @@ vmmdev_ioctl(struct cdev *cdev, u_long cmd, caddr_t data, int fflag,
/* FALLTHROUGH */
case VM_MAP_PPTDEV_MMIO:
case VM_UNMAP_PPTDEV_MMIO:
- case VM_BIND_PPTDEV:
- case VM_UNBIND_PPTDEV:
#ifdef BHYVE_SNAPSHOT
case VM_SNAPSHOT_REQ:
case VM_RESTORE_TIME: