diff options
author | alc <alc@FreeBSD.org> | 2015-09-26 07:18:05 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2015-09-26 07:18:05 +0000 |
commit | 57f2addb310ac73d8993f2a25608b0c00204dba0 (patch) | |
tree | e06c87a7b94a1a95cc57bfd99b2a6e2af5e95d7b /sys/amd64 | |
parent | 707f180e64298b4c8e173794b5cb9114575351e9 (diff) | |
download | FreeBSD-src-57f2addb310ac73d8993f2a25608b0c00204dba0.zip FreeBSD-src-57f2addb310ac73d8993f2a25608b0c00204dba0.tar.gz |
Exploit r288122 to address a cosmetic issue. Since PV chunk pages don't
belong to a vm object, they can't be paged out. Since they can't be paged
out, they are never enqueued in a paging queue. Nonetheless, passing
PQ_INACTIVE to vm_page_unwire() creates the appearance that these pages
are being enqueued in the inactive queue. As of r288122, we can avoid
this false impression by passing PQ_NONE.
Submitted by: kmacy (an earlier version)
Differential Revision: https://reviews.freebsd.org/D1674
Diffstat (limited to 'sys/amd64')
-rw-r--r-- | sys/amd64/amd64/pmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index f3e54805..cc1b73e 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -2860,7 +2860,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, PQ_INACTIVE); + vm_page_unwire(m, PQ_NONE); vm_page_free(m); } |