Messages in this thread | | | Date | Wed, 02 Jul 2008 16:18:44 +0300 | From | Artem Bityutskiy <> | Subject | Re: Is VFS behavior fine? |
| |
Miklos Szeredi wrote: >> I may just say that I fixed this in UBIFS by not calling >> 'd_splice_alias()' for not found dentries if the parent >> directory inode has 'n_link' = 0. However, ext[23] always >> call 'd_splice_alias()' for not found direntries (passing >> NULL as the 'inode' parameter). >> >> Again, I am not 100% sure this is the right fix, because >> I suspect this should be "fixed" in VFS. I tried to do this >> and I have a small VFS patch, but it is probably incorrect. > > The correct fix IMO is to make lookup return ENOENT on an IS_DEADDIR() > inode, before even trying to create the child dentry.
Sounds correct, thanks for the replay.
> Untested patch attached.
Looks fine. Tried it, looks fine and solves my problem. Ran some of my tests and they did not fail.
Hopefully this patch will make his way to mainline. Thanks.
-- Best Regards, Artem Bityutskiy (Артём Битюцкий) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |