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
This commit is contained in:
markj 2016-06-02 17:11:24 +00:00
parent 4976368741
commit 0c382ea647

View File

@ -1748,6 +1748,7 @@ vm_page_alloc(vm_object_t object, vm_pindex_t pindex, int req)
}
m->object = NULL;
m->oflags = VPO_UNMANAGED;
m->busy_lock = VPB_UNBUSIED;
vm_page_free(m);
return (NULL);
}
@ -1949,6 +1950,7 @@ vm_page_alloc_contig(vm_object_t object, vm_pindex_t pindex, int req,
m->object = NULL;
m->oflags |= VPO_UNMANAGED;
}
m->busy_lock = VPB_UNBUSIED;
vm_page_free(m);
}
return (NULL);