diff options
author | Robert Wing <rew@FreeBSD.org> | 2023-01-20 10:03:59 +0000 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2023-01-26 22:05:13 +0000 |
commit | eb37d3cc565e278d568b0454fc3b2b9cab4c3518 (patch) | |
tree | 965dd4acf0868fea1696a176c466d34616003a96 | |
parent | aca0d0b421d3ee7b844edf949902c0c189279ad7 (diff) | |
download | src-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.c | 4 |
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: |