diff options
author | markj <markj@FreeBSD.org> | 2017-11-28 01:15:10 +0000 |
---|---|---|
committer | Luiz Souza <luiz@netgate.com> | 2018-02-21 15:15:20 -0300 |
commit | 6cbea300f4983466a260ce85583bf5eaf702780c (patch) | |
tree | ba13a7f8960d8d47df6b6617d13494c423f4f2fd | |
parent | 47aac30b6f41db4be76373692e126f2282af9f0b (diff) | |
download | FreeBSD-src-6cbea300f4983466a260ce85583bf5eaf702780c.zip FreeBSD-src-6cbea300f4983466a260ce85583bf5eaf702780c.tar.gz |
MFC r326055:
Allow for fictitious physical pages in vm_page_scan_contig().
(cherry picked from commit 332a8c368c824313c1bcac21a4ad1c73666818ae)
-rw-r--r-- | sys/vm/vm_page.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 4b6dcbe..982d55e 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2036,8 +2036,10 @@ vm_page_scan_contig(u_long npages, vm_page_t m_start, vm_page_t m_end, run_len = 0; m_mtx = NULL; for (m = m_start; m < m_end && run_len < npages; m += m_inc) { - KASSERT((m->flags & (PG_FICTITIOUS | PG_MARKER)) == 0, - ("page %p is PG_FICTITIOUS or PG_MARKER", m)); + KASSERT((m->flags & PG_MARKER) == 0, + ("page %p is PG_MARKER", m)); + KASSERT((m->flags & PG_FICTITIOUS) == 0 || m->wire_count == 1, + ("fictitious page %p has invalid wire count", m)); /* * If the current page would be the start of a run, check its |