Author: markj
Date: Thu Jun  2 17:11:24 2016
New Revision: 301212
URL: https://svnweb.freebsd.org/changeset/base/301212

Log:
  Reset the page busy lock state after failing to insert into the object.
  
  Freeing a shared-busy page is not permitted.
  
  Reviewed by:  kib
  MFC after:    1 week
  Differential Revision:        https://reviews.freebsd.org/D6670

Modified:
  head/sys/vm/vm_page.c

Modified: head/sys/vm/vm_page.c
==============================================================================
--- head/sys/vm/vm_page.c       Thu Jun  2 17:08:08 2016        (r301211)
+++ head/sys/vm/vm_page.c       Thu Jun  2 17:11:24 2016        (r301212)
@@ -1748,6 +1748,7 @@ vm_page_alloc(vm_object_t object, vm_pin
                        }
                        m->object = NULL;
                        m->oflags = VPO_UNMANAGED;
+                       m->busy_lock = VPB_UNBUSIED;
                        vm_page_free(m);
                        return (NULL);
                }
@@ -1949,6 +1950,7 @@ retry:
                                                m->object = NULL;
                                                m->oflags |= VPO_UNMANAGED;
                                        }
+                                       m->busy_lock = VPB_UNBUSIED;
                                        vm_page_free(m);
                                }
                                return (NULL);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to