xfs
[Top] [All Lists]

Re: [PATCH 2/4] xfs: set up inode operation vectors later

To: Christoph Hellwig <hch@xxxxxx>
Subject: Re: [PATCH 2/4] xfs: set up inode operation vectors later
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 24 Mar 2016 10:45:54 +1100
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20160323232630.GA5646@xxxxxx>
References: <1458740935-31260-1-git-send-email-hch@xxxxxx> <1458740935-31260-3-git-send-email-hch@xxxxxx> <20160323230500.GZ30721@dastard> <20160323232630.GA5646@xxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Thu, Mar 24, 2016 at 12:26:30AM +0100, Christoph Hellwig wrote:
> On Thu, Mar 24, 2016 at 10:05:00AM +1100, Dave Chinner wrote:
> > >   d_instantiate(dentry, inode);
> > >   xfs_finish_inode_setup(cip);
> > 
> > I think there are more places than this that need xfs_setup_iops()
> > calls - a quick look around makes me think they need to be paired
> > with every path that calls xfs_finish_inode_setup().
> 
> Most calls to xfs_finish_inode_setup are for error cases that
> just drop the inode instantly and don't need it.

Fair enough.

> The other
> cases are:
> 
>  - xfs_generic_create, xfs_vn_symlink and xfs_setup_existing_inode,
>    which are handled in this patch
>  - xfs_qm_qino_alloc, which is for the quota inode that doesn't have
>    inode operations

*nod*

>  - xfs_rename_alloc_whiteout which probably needs it.  This seems
>    to be recent and has no apparent test coverage, so I'm not sure
>    how to verify it, though.

Yup, that's the one I first noticed. generic/078 tests
RENAME_WHITEOUT functionality through renameat2() and it includes
operations on symlinks, so there is some coverage in xfstests for
it.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

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