VOP_INACTIVE,
VOP_RECLAIM —
reclaim file system resources for a vnode
#include
<sys/param.h>
#include
<sys/vnode.h>
int
VOP_INACTIVE(
struct
vnode *vp,
struct thread
*td);
int
VOP_RECLAIM(
struct
vnode *vp,
struct thread
*td);
The arguments are:
- vp
- The vnode being reclaimed.
VOP_INACTIVE() is usually called when the kernel is
no longer using the vnode. However, there is no guarantee that it will be
called at all, for example if the last reference was dropped while the vnode
lock could not be upgraded to exclusive without sleeping. This may be because
the reference count reaches zero or it may be that the file system is being
forcibly unmounted while there are open files. It can be used to reclaim space
on the last close of an ‘open but deleted’ file.
VOP_RECLAIM() is called when a vnode is being
reused for a different file system. Any file system specific resources
associated with the vnode should be freed.
For both
VOP_INACTIVE() and
VOP_RECLAIM(), the
vp will be exclusively locked on entry, and
must be left exclusively locked on return.
vnode(9)
This manual page was written by
Doug
Rabson.