kernel - Cleanup vfs_lock & ref-count states states
* Clean up vp->v_state state transitions
* Fix bugs in the cachedvnodes counter tracking. v_refcnt has to
be masked against VREF_MASK to detect non-zero->0 and 0->non-zero
transitions properly.
* Clear VREF_FINALIZE when reactivating a vnode in vget().
* vhold()/vdrop() no longer prevent a vnode from being moved to the
vinactive list. They simply prevent reclamation.
* Adjust the vnlru trigger points a bit.
* When cleaning, leave the vnode on the inactive list until we determine
we can destroy it. Add a ref instead of using the VREF_TERMINATE
placeholding ref (since the vnode is still on the list).
* Implement vnode->v_act and remove the inactive mid-point stuff. The
now is that vnodes are selectively moved from the active list to
the inactive list as needed. Inactive vnodes are then cleaned up in order.
* Adjust hysteresis so that vnlru has a better chance of handling the
vnode garbage collection before we forced it to be done synchronously
in userexit.