Re: [V9fs-developer] [PATCH 1/5] fs/9p: Fix revalidate to return correct value

From: Aneesh Kumar K. V
Date: Tue Mar 29 2011 - 00:38:44 EST


On Mon, 28 Mar 2011 13:49:44 -0700, Venkateswararao Jujjuri <jvrao@xxxxxxxxxxxxxxxxxx> wrote:
> On 03/25/2011 01:50 PM, Venkateswararao Jujjuri wrote:
> > On 03/25/2011 04:30 AM, Aneesh Kumar K.V wrote:
> >> revalidate should return> 0 on success.
> >>
> >> Signed-off-by: Aneesh Kumar K.V<aneesh.kumar@xxxxxxxxxxxxxxxxxx>
> >
> > Reviewed-by: Venkateswararao Jujjuri <jvrao@xxxxxxxxxxxxxxxxxx>
> >
> >> ---
> >> fs/9p/vfs_dentry.c | 2 +-
> >> 1 files changed, 1 insertions(+), 1 deletions(-)
> >>
> >> diff --git a/fs/9p/vfs_dentry.c b/fs/9p/vfs_dentry.c
> >> index b6a3b9f..59c5ddc 100644
> >> --- a/fs/9p/vfs_dentry.c
> >> +++ b/fs/9p/vfs_dentry.c
> >> @@ -126,7 +126,7 @@ static int v9fs_lookup_revalidate(struct dentry
> >> *dentry, struct nameidata *nd)
> >> retval = v9fs_refresh_inode_dotl(fid, inode);
> >> else
> >> retval = v9fs_refresh_inode(fid, inode);
> >> - if (retval<= 0)
> >> + if (retval< 0)
> This change is causing tuxera rename test failure with acls enabled.
>
> /root/pjd-fstest-20080816/tests/rename/10.t (Wstat: 0 Tests: 188 Failed: 6)
> Failed tests: 65, 71, 74, 77, 79-80
> The comment in namei says:
> " If d_revalidate returned 0 attempt to invalidate the dentry
> otherwise d_revalidate is asking us
> to return a fail status." I guess we need to return 0 in the case of
> rename.
> Need more closer look at this patch.
>

The failure is due to the VFS issue which I already reported. The
patch for that is here
http://article.gmane.org/gmane.linux.file-systems/51123

Previously we worked around that in 9p. But with the recent VFS changes
the work around applies no more, lookup_create fails on error in
lookup_hash and look_hash -> do_revalidate returns ENOENT.

-aneesh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/