VREF_TERMINATE
KKASSERT(vp->v_refcnt & VREF_TERMINATE);
(vp->v_refcnt & ~VREF_FINALIZE) != VREF_TERMINATE + 1) {
atomic_clear_int(&vp->v_refcnt, VREF_TERMINATE|VREF_FINALIZE);
(vp->v_refcnt & ~VREF_FINALIZE) != VREF_TERMINATE + 1) {
KKASSERT(vp->v_refcnt & VREF_TERMINATE);
atomic_clear_int(&vp->v_refcnt, VREF_TERMINATE|VREF_FINALIZE);
&count, VREF_TERMINATE)) {
&count, VREF_TERMINATE)) {
if (vp->v_refcnt & VREF_TERMINATE) /* SMP race ok */
atomic_clear_int(&vp->v_refcnt, VREF_TERMINATE);
atomic_clear_int(&vp->v_refcnt, VREF_TERMINATE |
atomic_clear_int(&vp->v_refcnt, VREF_TERMINATE |
VREF_TERMINATE);
(vp->v_refcnt & ~VREF_FINALIZE) == VREF_TERMINATE + 1)
(vp->v_refcnt & ~VREF_FINALIZE) != VREF_TERMINATE + 1) {