vnop_reclaim_args
Notify a filesystem that the last usecount (persistent reference) on a vnode has been dropped.
Declaration
struct vnop_reclaim_args {
...
};Discussion
VNOP_INACTVE() gives a filesystem a chance to aggressively release resources assocated with a vnode, perhaps even to call vnode_recycle(), but no action is prescribed; it is acceptable for VNOP_INACTIVE to be a no-op and to defer all reclamation until VNOP_RECLAIM(). VNOP_INACTVE() will not be called on a vnode if no persistent reference is ever taken; an important example is a stat(), which takes an iocount, reads its data, and drops that iocount.
Topics
Fields
Instance Properties
See Also
vnode
vnop_access_descvnop_advlock_descvnop_allocate_descvnop_blktooff_descvnop_blockmap_descvnop_bwrite_descvnop_clonefile_descvnop_close_descvnop_copyfile_descvnop_create_descvnop_default_descvnop_exchange_descvnop_fsync_descvnop_getattr_descvnop_getattrlistbulk_descvnop_getxattr_descvnop_inactive_descvnop_ioctl_descvnop_kqfilt_add_descvnop_kqfilt_remove_descvnop_link_descvnop_listxattr_descvnop_lookup_descvnop_mkdir_descvnop_mknod_descvnop_mmap_check_descvnop_mmap_descvnop_mnomap_descvnop_offtoblk_descvnop_open_descvnop_pagein_descvnop_pageout_descvnop_pathconf_descvnop_print_descvnop_read_descvnop_readdir_descvnop_readdirattr_descvnop_readlink_descvnop_reclaim_descvnop_remove_descvnop_removexattr_descvnop_rename_descvnop_renamex_descvnop_revoke_descvnop_rmdir_descvnop_searchfs_descvnop_select_descvnop_setattr_descvnop_setlabel_descvnop_setxattr_descvnop_strategy_descvnop_symlink_descvnop_truncate_descvnop_whiteout_descvnop_write_descvnode_addfsrefvnode_authattrvnode_authattr_newvnode_authorizevnode_clearautocandidatevnode_cleardirtyvnode_clearfastdevicecandidatevnode_clearfsnodevnode_clearmountedonvnode_clearnocachevnode_clearnoreadaheadvnode_closevnode_createvnode_fsnodevnode_getvnode_get_va_fsidvnode_getattrvnode_getbackingvnodevnode_getnamevnode_getparentvnode_getwithrefvnode_getwithvidvnode_hascleanblksvnode_hasdirtyblksvnode_isautocandidatevnode_isblkvnode_ischrvnode_isdirvnode_isdirtyvnode_isfastdevicecandidatevnode_isfifovnode_isinusevnode_islnkvnode_ismountvnode_ismountedonvnode_isnamedstreamvnode_isnocachevnode_isnoreadaheadvnode_isonexternalstoragevnode_isragevnode_isrecycledvnode_isregvnode_isswapvnode_issystemvnode_isvrootvnode_iteratevnode_lookupvnode_mountvnode_mountedherevnode_needssnapshotsvnode_notifyvnode_openvnode_putvnode_putnamevnode_recyclevnode_refvnode_relevnode_removefsrefvnode_setattrvnode_setautocandidatevnode_setdirtyvnode_setfastdevicecandidatevnode_setmountedonvnode_setmultipathvnode_setnocachevnode_setnoreadaheadvnode_settagvnode_specrdevvnode_startwritevnode_tagvnode_uncache_credentialsvnode_update_identityvnode_vfs64bitreadyvnode_vfsisrdonlyvnode_vfsmaxsymlenvnode_vfsnamevnode_vfstypenumvnode_vidvnode_vtypevnode_waitforwritesvnode_writedonevnode_attrvnode_fsparamvnode_tvnodeopv_descvnodeopv_entry_descvnop_access_argsvnop_advlock_argsvnop_allocate_argsvnop_blktooff_argsvnop_blockmap_argsvnop_bwrite_argsvnop_clonefile_argsvnop_close_argsvnop_copyfile_argsvnop_create_argsvnop_exchange_argsvnop_fsync_argsvnop_generic_argsvnop_getattr_argsvnop_getattrlistbulk_argsvnop_getxattr_argsvnop_inactive_argsvnop_ioctl_argsvnop_kqfilt_add_argsvnop_kqfilt_remove_argsvnop_link_argsvnop_listxattr_argsvnop_lookup_argsvnop_mkdir_argsvnop_mknod_argsvnop_mmap_argsvnop_mmap_check_argsvnop_mnomap_argsvnop_offtoblk_argsvnop_open_argsvnop_pagein_argsvnop_pageout_argsvnop_pathconf_argsvnop_read_argsvnop_readdir_argsvnop_readdirattr_argsvnop_readlink_argsvnop_remove_argsvnop_removexattr_argsvnop_rename_argsvnop_renamex_argsvnop_revoke_argsvnop_rmdir_argsvnop_searchfs_argsvnop_select_argsvnop_setattr_argsvnop_setlabel_argsvnop_setxattr_argsvnop_strategy_argsvnop_symlink_argsvnop_whiteout_argsvnop_write_args