svn commit: r353294 - head/sys/vm
Mark Johnston
markj at FreeBSD.org
Mon Oct 7 23:31:18 UTC 2019
Author: markj
Date: Mon Oct 7 23:31:17 2019
New Revision: 353294
URL: https://svnweb.freebsd.org/changeset/base/353294
Log:
Assert that the PGA_{WRITEABLE,EXECUTABLE} flags do not leak.
Reviewed by: alc, kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D21783
Modified:
head/sys/vm/vm_page.c
Modified: head/sys/vm/vm_page.c
==============================================================================
--- head/sys/vm/vm_page.c Mon Oct 7 23:19:09 2019 (r353293)
+++ head/sys/vm/vm_page.c Mon Oct 7 23:31:17 2019 (r353294)
@@ -3546,12 +3546,15 @@ vm_page_free_prep(vm_page_t m)
m, i, (uintmax_t)*p));
}
#endif
- if ((m->oflags & VPO_UNMANAGED) == 0)
+ if ((m->oflags & VPO_UNMANAGED) == 0) {
KASSERT(!pmap_page_is_mapped(m),
("vm_page_free_prep: freeing mapped page %p", m));
- else
+ KASSERT((m->aflags & (PGA_EXECUTABLE | PGA_WRITEABLE)) == 0,
+ ("vm_page_free_prep: mapping flags set in page %p", m));
+ } else {
KASSERT(m->queue == PQ_NONE,
("vm_page_free_prep: unmanaged page %p is queued", m));
+ }
VM_CNT_INC(v_tfree);
if (vm_page_sbusied(m))
More information about the svn-src-head
mailing list