[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200116185417.GF24522@iweiny-DESK2.sc.intel.com>
Date: Thu, 16 Jan 2020 10:54:18 -0800
From: Ira Weiny <ira.weiny@...el.com>
To: "Darrick J. Wong" <darrick.wong@...cle.com>
Cc: linux-kernel@...r.kernel.org,
Alexander Viro <viro@...iv.linux.org.uk>,
Dan Williams <dan.j.williams@...el.com>,
Dave Chinner <david@...morbit.com>,
Christoph Hellwig <hch@....de>,
"Theodore Y. Ts'o" <tytso@....edu>, Jan Kara <jack@...e.cz>,
linux-ext4@...r.kernel.org, linux-xfs@...r.kernel.org,
linux-fsdevel@...r.kernel.org
Subject: Re: [RFC PATCH V2 07/12] fs: Add locking for a dynamic inode 'mode'
On Wed, Jan 15, 2020 at 09:40:40PM -0800, Darrick J. Wong wrote:
> On Wed, Jan 15, 2020 at 11:08:46AM -0800, Ira Weiny wrote:
> > On Mon, Jan 13, 2020 at 05:03:22PM -0800, Darrick J. Wong wrote:
> > > On Mon, Jan 13, 2020 at 04:20:05PM -0800, Ira Weiny wrote:
> > > > On Mon, Jan 13, 2020 at 02:12:18PM -0800, Darrick J. Wong wrote:
> > > > > On Fri, Jan 10, 2020 at 11:29:37AM -0800, ira.weiny@...el.com wrote:
> > > > > > From: Ira Weiny <ira.weiny@...el.com>
> >
> > [snip]
> >
> > > > > > +``lock_mode``
> > > > > > + called to prevent operations which depend on the inode's mode from
> > > > > > + proceeding should a mode change be in progress
> > > > >
> > > > > "Inodes can't change mode, because files do not suddenly become
> > > > > directories". ;)
> > > >
> > > > Yea sorry.
> > > >
> > > > >
> > > > > Oh, you meant "lock_XXXX is called to prevent a change in the pagecache
> > > > > mode from proceeding while there are address space operations in
> > > > > progress". So these are really more aops get and put functions...
> > > >
> > > > At first I actually did have aops get/put functions but this is really
> > > > protecting more than the aops vector because as Christoph said there are file
> > > > operations which need to be protected not just address space operations.
> > > >
> > > > But I agree "mode" is a bad name... Sorry...
> > >
> > > inode_fops_{get,set}(), then?
> > >
> > > inode_start_fileop()
> > > inode_end_fileop() ?
> > >
> > > Trying to avoid sounding foppish <COUGH>
> >
> > What about?
> >
> > inode_[un]lock_state()?
>
> Kinda vague -- which state? inodes retain a lot of different state.
>
> This locking primitive ensures that file operations pointers can't
> change while any operations are ongoing, right?
file ops
Address space ops
...
Whatever it needs...
With the current patch set we could be more specific and call it.
inode_[un]lock_dax_state()
Ira
>
> --D
>
> > Ira
> >
Powered by blists - more mailing lists