diff options
Diffstat (limited to 'emulators/vmware3/files/patch-be')
-rw-r--r-- | emulators/vmware3/files/patch-be | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/emulators/vmware3/files/patch-be b/emulators/vmware3/files/patch-be deleted file mode 100644 index 3515097e1e04..000000000000 --- a/emulators/vmware3/files/patch-be +++ /dev/null @@ -1,125 +0,0 @@ ---- vmmon-only/freebsd/hostif.c.orig Mon Sep 2 19:19:50 2002 -+++ vmmon-only/freebsd/hostif.c Mon Sep 2 19:30:03 2002 -@@ -55,7 +55,11 @@ - - #include <vm/vm.h> - #include <vm/vm_param.h> -+#if __FreeBSD_version >= 500018 -+#include <sys/mutex.h> -+#else - #include <sys/lock.h> -+#endif - #include <vm/pmap.h> - #include <vm/vm_map.h> - #include <vm/vm_page.h> -@@ -107,7 +111,21 @@ - - paddr = (vm_offset_t)addr; - m = PHYS_TO_VM_PAGE(paddr); -- vm_page_wire(m); -+#if __FreeBSD_version >= 500038 -+ GIANT_REQUIRED; -+ vm_page_lock_queues(); -+ vm_page_wire(m); -+ vm_page_unlock_queues(); -+#elif __FreeBSD_version >= 500021 -+ GIANT_REQUIRED; -+ vm_page_wire(m); -+#elif __FreeBSD_version >= 500013 -+ mtx_lock(&vm_mtx); -+ vm_page_wire(m); -+ mtx_unlock(&vm_mtx); -+#else -+ vm_page_wire(m); -+#endif - return 0; - } - -@@ -120,7 +138,21 @@ - - paddr = (vm_offset_t)addr; - m = PHYS_TO_VM_PAGE(paddr); -+#if __FreeBSD_version >= 500038 -+ GIANT_REQUIRED; -+ vm_page_lock_queues(); -+ vm_page_unwire(m, 1); -+ vm_page_unlock_queues(); -+#elif __FreeBSD_version >= 500021 -+ GIANT_REQUIRED; -+ vm_page_unwire(m, 1); -+#elif __FreeBSD_version >= 500013 -+ mtx_lock(&vm_mtx); - vm_page_unwire(m, 1); -+ mtx_unlock(&vm_mtx); -+#else -+ vm_page_unwire(m, 1); -+#endif - return 0; - } - -@@ -1066,10 +1098,33 @@ - return NULL; - } - paddr = vtophys(addr); -+#if __FreeBSD_version >= 500038 -+ GIANT_REQUIRED; -+ ka->kaddr = kmem_alloc_pageable(kernel_map, PAGE_SIZE); -+ ka->map = PHYS_TO_VM_PAGE(paddr); -+ vm_page_lock_queues(); -+ vm_page_wire(ka->map); -+ vm_page_unlock_queues(); -+ pmap_qenter(ka->kaddr, &ka->map, 1); -+#elif __FreeBSD_version >= 500021 -+ GIANT_REQUIRED; -+ ka->kaddr = kmem_alloc_pageable(kernel_map, PAGE_SIZE); -+ ka->map = PHYS_TO_VM_PAGE(paddr); -+ vm_page_wire(ka->map); -+ pmap_kenter(ka->kaddr, paddr); -+#elif __FreeBSD_version >= 500013 -+ mtx_lock(&vm_mtx); -+ ka->kaddr = kmem_alloc_pageable(kernel_map, PAGE_SIZE); -+ ka->map = PHYS_TO_VM_PAGE(paddr); -+ vm_page_wire(ka->map); -+ pmap_kenter(ka->kaddr, paddr); -+ mtx_unlock(&vm_mtx); -+#else - ka->kaddr = kmem_alloc_pageable(kernel_map, PAGE_SIZE); - ka->map = PHYS_TO_VM_PAGE(paddr); - vm_page_wire(ka->map); - pmap_kenter(ka->kaddr, paddr); -+#endif - return ka->kaddr; - } - -@@ -1079,9 +1134,29 @@ - if (ka->map==NULL) - return 0; - -- vm_page_unwire(ka->map, 1); -- pmap_kremove(ka->kaddr); -+#if __FreeBSD_version >= 500038 -+ GIANT_REQUIRED; -+ vm_page_lock_queues(); -+ vm_page_unwire(ka->map, 1); -+ vm_page_unlock_queues(); -+ pmap_qremove(ka->kaddr, 1); - kmem_free(kernel_map, ka->kaddr, PAGE_SIZE); -+#elif __FreeBSD_version >= 500021 -+ GIANT_REQUIRED; -+ vm_page_unwire(ka->map, 1); -+ pmap_kremove(ka->kaddr); -+ kmem_free(kernel_map, ka->kaddr, PAGE_SIZE); -+#elif __FreeBSD_version >= 500013 -+ mtx_lock(&vm_mtx); -+ vm_page_unwire(ka->map, 1); -+ pmap_kremove(ka->kaddr); -+ kmem_free(kernel_map, ka->kaddr, PAGE_SIZE); -+ mtx_unlock(&vm_mtx); -+#else -+ vm_page_unwire(ka->map, 1); -+ pmap_kremove(ka->kaddr); -+ kmem_free(kernel_map, ka->kaddr, PAGE_SIZE); -+#endif - ka->kaddr = 0; - ka->map = NULL; - return 0; |