[Tux3] Deferred delete, second attempt
Daniel Phillips
phillips at phunq.net
Fri Dec 5 18:39:24 PST 2008
Last night's Tux3 U consisted of a walkthrough of the deferred delete
patch, during which Hirofumi noticed another race: during deferred
delete processing, the DCACHE_HIDDEN flag has to be kept until the
dentry has actually been unlinked, otherwise a lookup may erroneously
succeed after the HIDDEN flag has ben cleared and before the dentry is
set negative by removing the inode. The solution is not to clear the
HIDDEN flag at all, except when the dentry is about to be reused. This
simplifies things a little.
With the current patch, deferred deletion seems to work pretty well, but
a new ceate of a deferred, deleted name will fail because the Ext2
create will go to the dirent block and find the name still there. To
fix this, I need to complete the patch and handle deferred create as
well.
The updated patch, and difference between the last two patches are
attached.
Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defer.patch
Type: text/x-diff
Size: 16255 bytes
Desc: not available
URL: <http://phunq.net/pipermail/tux3/attachments/20081205/176ceeb0/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: defer.diff
Type: text/x-diff
Size: 2971 bytes
Desc: not available
URL: <http://phunq.net/pipermail/tux3/attachments/20081205/176ceeb0/attachment-0001.diff>
-------------- next part --------------
_______________________________________________
Tux3 mailing list
Tux3 at tux3.org
http://mailman.tux3.org/cgi-bin/mailman/listinfo/tux3
More information about the Tux3
mailing list