summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2017-06-15 02:39:33 +0000
committerjkim <jkim@FreeBSD.org>2017-06-15 02:39:33 +0000
commit40fc88e219ec203e0954b771f7d4f65e867a2a42 (patch)
treef09105ad158f7afe5ddaf4cda4fa52339b545506 /sys/vm
parent52b2adbfe7c57be9249fab14c0fccac153ae0964 (diff)
downloadFreeBSD-src-40fc88e219ec203e0954b771f7d4f65e867a2a42.zip
FreeBSD-src-40fc88e219ec203e0954b771f7d4f65e867a2a42.tar.gz
Null pointer must be checked before use. This fixes a regression introduced
in r318716. Note it is a direct commit to stable/11 because head removed support for idle page zeroing in r305362. PR: 219994 Reviewed by: markj Approved by: re (gjb)
Diffstat (limited to 'sys/vm')
-rw-r--r--sys/vm/vm_page.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index 6d8b364..feb30cc 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -1759,18 +1759,18 @@ retry:
pagedaemon_wakeup();
return (NULL);
}
- if (m_ret != NULL)
+ if (m_ret != NULL) {
vm_phys_freecnt_adj(m_ret, -npages);
- else {
+ for (m = m_ret; m < &m_ret[npages]; m++)
+ if ((m->flags & PG_ZERO) != 0)
+ vm_page_zero_count--;
+ } else {
#if VM_NRESERVLEVEL > 0
if (vm_reserv_reclaim_contig(npages, low, high, alignment,
boundary))
goto retry;
#endif
}
- for (m = m_ret; m < &m_ret[npages]; m++)
- if ((m->flags & PG_ZERO) != 0)
- vm_page_zero_count--;
mtx_unlock(&vm_page_queue_free_mtx);
if (m_ret == NULL)
return (NULL);
OpenPOWER on IntegriCloud