xfs
[Top] [All Lists]

Re: Need of inode->i_mutex in xfs_write()

To: kanishk rastogi <kanishk.85@xxxxxxxxx>
Subject: Re: Need of inode->i_mutex in xfs_write()
From: David Chinner <dgc@xxxxxxx>
Date: Fri, 7 Sep 2007 22:15:05 +1000
Cc: David Chinner <dgc@xxxxxxx>, xfs@xxxxxxxxxxx
In-reply-to: <9ee2fe770709062243u67956d26o7222435956213f0@xxxxxxxxxxxxxx>
References: <9ee2fe770708210826n5952e727od0df16a5a7b267f0@xxxxxxxxxxxxxx> <20070823225111.GW72985246@xxxxxxx> <9ee2fe770709062243u67956d26o7222435956213f0@xxxxxxxxxxxxxx>
Sender: xfs-bounce@xxxxxxxxxxx
User-agent: Mutt/1.4.2.1i
On Fri, Sep 07, 2007 at 11:28:27AM +0545, kanishk rastogi wrote:
> On 8/24/07, David Chinner <dgc@xxxxxxx> wrote:
> > On Tue, Aug 21, 2007 at 09:11:56PM +0545, kanishk rastogi wrote:
> > > I was looking at the xfs_write code path in kernel 2.6.20 .......
> > > I saw it acquiring inode->i_mutex .
> > > Whats the need ?
> > > What are we safegaurding inode for.
> >
> > See Documentation/filesystems/Locking and other files in that
> > directory for what i_mutex is supposed to protect.
> >
> > XFS is different as it has it's own inodes and inode locks, but
> > it still mostly uses i_mutex inteh accepted way.
> >
> 
> xfs_write comes in file_operations->aio_write()
> and the documentation doesnt say anything for it to acquire i_mutex in
> that path.

The i_mutex is supposed to be held across various calls into
generic code. See generic_file_aio_write() for the common
implementation of ->aio_write(). The entire write path is
supposed to be protected by the i_mutex.

Cheers,

Dave.
-- 
Dave Chinner
Principal Engineer
SGI Australian Software Group


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