Page MenuHomeFreeBSD

D50333.1794719910.diff
No OneTemporary

Authored By
Unknown
Size
1 KB
Referenced Files
None
Subscribers
None

D50333.1794719910.diff

diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -64,7 +64,6 @@
* Resident memory management module.
*/
-#include <sys/cdefs.h>
#include "opt_vm.h"
#include <sys/param.h>
@@ -2110,6 +2109,7 @@
if (vm_object_reserv(object) &&
(m = vm_reserv_alloc_page(object, pindex, domain, req, pages)) !=
NULL) {
+ vm_page_dequeue(m);
goto found;
}
#endif
@@ -2118,6 +2118,7 @@
m = uma_zalloc(vmd->vmd_pgcache[VM_FREEPOOL_DEFAULT].zone,
M_NOWAIT | M_NOVM);
if (m != NULL) {
+ vm_page_dequeue(m);
flags |= PG_PCPU_CACHE;
goto found;
}
@@ -2151,7 +2152,6 @@
* At this point we had better have found a good page.
*/
found:
- vm_page_dequeue(m);
vm_page_alloc_check(m);
/*
@@ -2473,7 +2473,6 @@
}
found:
- vm_page_dequeue(m);
vm_page_alloc_check(m);
/*
@@ -2645,7 +2644,6 @@
if ((req & VM_ALLOC_WIRED) != 0)
vm_wire_add(npages);
for (m = m_ret; m < &m_ret[npages]; m++) {
- vm_page_dequeue(m);
vm_page_alloc_check(m);
/*
@@ -2738,6 +2736,8 @@
vm_domain_free_lock(vmd);
for (i = 0; i < cnt; i++) {
m = (vm_page_t)store[i];
+ if (pgcache->pool == VM_FREEPOOL_DEFAULT)
+ vm_page_dequeue(m);
vm_phys_free_pages(m, pgcache->pool, 0);
}
vm_domain_free_unlock(vmd);
@@ -4130,6 +4130,7 @@
uma_zfree(zone, m);
return;
}
+ vm_page_dequeue(m);
vm_domain_free_lock(vmd);
vm_phys_free_pages(m, m->pool, 0);
vm_domain_free_unlock(vmd);
diff --git a/sys/vm/vm_reserv.c b/sys/vm/vm_reserv.c
--- a/sys/vm/vm_reserv.c
+++ b/sys/vm/vm_reserv.c
@@ -478,7 +478,11 @@
}
vmd = VM_DOMAIN(rv->domain);
if (rv->popcnt == 0) {
+ vm_page_t m;
+
vm_reserv_remove(rv);
+ for (m = rv->pages; m < rv->pages + VM_LEVEL_0_NPAGES; m++)
+ vm_page_dequeue(m);
vm_domain_free_lock(vmd);
vm_phys_free_pages(rv->pages, VM_FREEPOOL_DEFAULT,
VM_LEVEL_0_ORDER);

File Metadata

Mime Type
text/plain
Expires
Sun, Nov 15, 5:18 AM (10 h, 39 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
41738795
Default Alt Text
D50333.1794719910.diff (1 KB)

Event Timeline