summaryrefslogtreecommitdiffstats
path: root/sys/amd64
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2014-06-16 18:15:27 +0000
committerattilio <attilio@FreeBSD.org>2014-06-16 18:15:27 +0000
commit2802c525ad1ace89e32dfadc6121f67fcdd9132f (patch)
tree84adf2de9d1ba827bc45bbdc6f1e76f230319e94 /sys/amd64
parent4b840db0c44a4742d5d824c47328d0b1c89de43b (diff)
downloadFreeBSD-src-2802c525ad1ace89e32dfadc6121f67fcdd9132f.zip
FreeBSD-src-2802c525ad1ace89e32dfadc6121f67fcdd9132f.tar.gz
- Modify vm_page_unwire() and vm_page_enqueue() to directly accept
the queue where to enqueue pages that are going to be unwired. - Add stronger checks to the enqueue/dequeue for the pagequeues when adding and removing pages to them. Of course, for unmanaged pages the queue parameter of vm_page_unwire() will be ignored, just as the active parameter today. This makes adding new pagequeues quicker. This change effectively modifies the KPI. __FreeBSD_version will be, however, bumped just when the full cache of free pages will be evicted. Sponsored by: EMC / Isilon storage division Reviewed by: alc Tested by: pho
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/amd64/pmap.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 0141f15..ae0041f 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -2868,7 +2868,7 @@ free_pv_chunk(struct pv_chunk *pc)
/* entire chunk is free, return it */
m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc));
dump_drop_page(m->phys_addr);
- vm_page_unwire(m, 0);
+ vm_page_unwire(m, PQ_INACTIVE);
vm_page_free(m);
}
OpenPOWER on IntegriCloud