svn commit: r301098 - stable/10/sys/vm

Konstantin Belousov kib at FreeBSD.org
Wed Jun 1 04:01:50 UTC 2016


Author: kib
Date: Wed Jun  1 04:01:48 2016
New Revision: 301098
URL: https://svnweb.freebsd.org/changeset/base/301098

Log:
  MFC r300596:
  In vm_page_alloc_contig(), on vm_page_insert() failure, mark each
  freed page as VPO_UNMANAGED.  Otherwise vm_pge_free_toq() insists on
  owning the page lock.

Modified:
  stable/10/sys/vm/vm_page.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/vm/vm_page.c
==============================================================================
--- stable/10/sys/vm/vm_page.c	Wed Jun  1 03:49:22 2016	(r301097)
+++ stable/10/sys/vm/vm_page.c	Wed Jun  1 04:01:48 2016	(r301098)
@@ -1838,8 +1838,10 @@ retry:
 				    m < &m_ret[npages]; m++) {
 					if ((req & VM_ALLOC_WIRED) != 0)
 						m->wire_count = 0;
-					if (m >= m_tmp)
+					if (m >= m_tmp) {
 						m->object = NULL;
+						m->oflags |= VPO_UNMANAGED;
+					}
 					vm_page_free(m);
 				}
 				return (NULL);


More information about the svn-src-all mailing list