]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC 261811,282660,282706:
authorjhb <jhb@FreeBSD.org>
Sat, 6 Jun 2015 20:37:40 +0000 (20:37 +0000)
committerjhb <jhb@FreeBSD.org>
Sat, 6 Jun 2015 20:37:40 +0000 (20:37 +0000)
commit51c06666a902e195ca88afc6b333748c1d7ad639
treed1201d664486dbe0b7e77499d73ddb7f4ac6903a
parentac9f7bc3c6a3d76b846574698062aab3d7b860f5
MFC 261811,282660,282706:
Place VM objects on the object list when created and never remove them.

261811:
Fix function name in KASSERT().

282660:
Place VM objects on the object list when created and never remove them.
This is ok since objects come from a NOFREE zone and allows objects to
be locked while traversing the object list without triggering a LOR.

Ensure that objects on the list are marked DEAD while free or stillborn,
and that they have a refcount of zero.  This required updating most of
the pagers to explicitly mark an object as dead when deallocating it.
(Only the vnode pager did this previously.)

282706:
Satisfy vm_object uma zone destructor requirements after r282660 when
vnode object creation raced.
sys/vm/default_pager.c
sys/vm/device_pager.c
sys/vm/phys_pager.c
sys/vm/sg_pager.c
sys/vm/swap_pager.c
sys/vm/vm_meter.c
sys/vm/vm_object.c
sys/vm/vnode_pager.c