Changeset View
Changeset View
Standalone View
Standalone View
sys/fs/smbfs/smbfs_node.c
Show First 20 Lines • Show All 266 Lines • ▼ Show 20 Lines | smbfs_reclaim(ap) | ||||
struct vnode *dvp; | struct vnode *dvp; | ||||
struct smbnode *np = VTOSMB(vp); | struct smbnode *np = VTOSMB(vp); | ||||
struct smbmount *smp = VTOSMBFS(vp); | struct smbmount *smp = VTOSMBFS(vp); | ||||
SMBVDEBUG("%s,%d\n", np->n_name, vrefcnt(vp)); | SMBVDEBUG("%s,%d\n", np->n_name, vrefcnt(vp)); | ||||
KASSERT((np->n_flag & NOPEN) == 0, ("file not closed before reclaim")); | KASSERT((np->n_flag & NOPEN) == 0, ("file not closed before reclaim")); | ||||
/* | |||||
* Destroy the vm object and flush associated pages. | |||||
*/ | |||||
vnode_destroy_vobject(vp); | |||||
dvp = (np->n_parent && (np->n_flag & NREFPARENT)) ? | dvp = (np->n_parent && (np->n_flag & NREFPARENT)) ? | ||||
np->n_parent : NULL; | np->n_parent : NULL; | ||||
/* | /* | ||||
* Remove the vnode from its hash chain. | * Remove the vnode from its hash chain. | ||||
*/ | */ | ||||
vfs_hash_remove(vp); | vfs_hash_remove(vp); | ||||
if (np->n_name) | if (np->n_name) | ||||
▲ Show 20 Lines • Show All 126 Lines • Show Last 20 Lines |