gmzang / maczfs

Automatically exported from code.google.com/p/maczfs
Other
0 stars 0 forks source link

Consider removing vnop_inactivate #84

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
A vnode is inactivated if it is removed. However, this results in the vnode and 
zfs cleanup being done in two places, which can be a problem.

The call-path for vnode_inactivate seems to only come via vnode_remove. After 
the inactivate, there is a lock which gets acquired (via vn->v_lock) and flags 
(vn->v_lflag), as well as cache removal (vp->v_cred, vp->v_ncchildren, 
vp->v_nclinks)

If we drop the ZFS content at the point of removal, and then avoid any 
references to the zfs specifics in vnop_inactivate, we might not have the 
collisions we see at the moment.

Original issue reported on code.google.com by alex.ble...@gmail.com on 18 Feb 2011 at 12:39

GoogleCodeExporter commented 8 years ago

Original comment by alex.ble...@gmail.com on 19 Mar 2011 at 8:37