xfs
[Top] [All Lists]

Re: xfs: fix locking for inode cache radix tree tag updates

To: Alex Elder <aelder@xxxxxxx>
Subject: Re: xfs: fix locking for inode cache radix tree tag updates
From: Christoph Hellwig <hch@xxxxxx>
Date: Tue, 2 Mar 2010 10:31:41 +0100
Cc: hch@xxxxxx, xfs@xxxxxxxxxxx
In-reply-to: <201003020106.o2216gkU004242@xxxxxxxxxxxxxxxxxxxxxx>
References: <201003020106.o2216gkU004242@xxxxxxxxxxxxxxxxxxxxxx>
User-agent: Mutt/1.3.28i
On Mon, Mar 01, 2010 at 07:06:42PM -0600, Alex Elder wrote:
> As I understand it, the point here is that the tags associated
> with a value stored in a radix tree are just as much "content"
> as the value itself.  Therefore you need to use the same locking
> protocol.  So we need to get the write lock to modify a tag value.

Yes.

> This succeeds at getting xfs_reclaim_inode() to skip over
> this one.  I think it's overloading the flag though--at least
> the name of the flag (which maybe is ambiguous anyway) doesn't
> really reflect what's happening here.  (The result is correct,
> however.)

We're kind of reclaiming the inode - just instead of freeing it
we're immediately reusing it.  We used the XFS_IRECLAIM flag
the same way before we started redoing the iget code.

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