xfs
[Top] [All Lists]

Re: BUG 799711 - LINUX XFS reports wrong permissions.

To: "William L. Jones" <jones@xxxxxxxxxxxxxxxxxx>
Subject: Re: BUG 799711 - LINUX XFS reports wrong permissions.
From: Russell Cattelan <cattelan@xxxxxxxxxxx>
Date: Wed, 23 Aug 2000 13:31:00 -0500
Cc: linux-xfs@xxxxxxxxxxx
References: <4.2.0.58.20000823095720.02202e00@127.0.0.1> <4.2.0.58.20000823123945.021cd180@127.0.0.1>
Sender: owner-linux-xfs@xxxxxxxxxxx
"William L. Jones" wrote:

> If you are using nfds then the problems is in vn_initialize it should call
> linvfs_revalidate_core after the linvfs_set_inode_ops.

I was just looking at that.
Ofcourse it can't be that simple. :-)


>
>
> At 11:46 AM 8/23/00 -0500, Russell Cattelan wrote:
> >"William L. Jones" wrote:
> >
> >
> > > open_by_handle can cause this, where you doning a xfsdump?
> >
> >No, basically the only activity on the file system was serving up some
> >nfs traffic.
> >
> >This does give me something to go on, I'll dig around and see if
> >anything looks suspicious.
> >
> >
> >BTW I have your latest ioctl patch in my tree,
> >ran fsr a few times...  seems to work just fine.
> >I'll commit it shortly.
> >
> > >
> > >
> > > The problem in open_by_handle in xfs_ioctl.c.  It is doing a
> > > linvfs_set_inode_ops
> > > with out doing a linvfs_revalidate_core after, linvfs_set_inode_op clears
> > > the perm bits in the mode field.  The following patch
> > > will fix the current oepn_by_handle:
> > >
> > > *** xfs_ioctl.c.orig    Sat Aug 19 14:03:21 2000
> > > --- xfs_ioctl.c Wed Aug 23 10:01:58 2000
> > > ***************
> > > *** 481,486 ****
> > > --- 481,492 ----
> > >                   * Set xfs inode ops.
> > >                   */
> > >                  linvfs_set_inode_ops(inode);
> > > +
> > > +               /*
> > > +                * Fix the perm mode flags that linvfs_set_inode_ops
> > bashes.
> > > +                */
> > > +               linvfs_revalidate_core(inode);
> > > +
> > >                  d_add(dentry, inode);
> > >          }
> > > --------------------- end 
> > > -------------------------------------------------
> > >
> > > If this doesn't fix the problem then there may be some other place were
> > > linvfs_set_inode_ops gets called with out a linvfs_set_inode_ops
> > > call right after.
> > >
> > >


<Prev in Thread] Current Thread [Next in Thread>