HomeFreeBSD

Clarify the vnode_destroy_vobject() logic handling for already terminated

Description

Clarify the vnode_destroy_vobject() logic handling for already terminated
objects.

Assert that there is no new waiters for the already terminated objects.
Old waiters should have been notified by the termination calling
vnode_pager_dealloc() (old/new are with regard of the lock acquisition
interval).

Only clear the vp->v_object for the case of already terminated object,
since other branches call vnode_pager_dealloc(), which should clear
the pointer. Assert this.

Tested by: pho
Reviewed by: alc
Sponsored by: The FreeBSD Foundation
MFC after: 2 weeks
Approved by: re (gjb)

Details

Provenance
kibAuthored on
Reviewer
alc
Parents
rS302342: Fix a regression introduced on revision r271909, when using argument -g
Branches
Unknown
Tags
Unknown