Re: An incorrect assumption over radix_tree_tag_get()

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Dave Chinner
Date: Tuesday, April 6, 2010 - 4:34 pm

On Wed, Apr 07, 2010 at 03:09:03AM +1000, Nick Piggin wrote:

I don't think it is safe - I made modifications to XFS that modified
radix tree tags under a read lock (not RCU), but this resulted in
corrupted tag state as concurrent tag set/clear operations for
different slots propagated through the tree and got mixed up.
Christoph fixed the problem (f1f724e4b523d444c5a598d74505aefa3d6844d2)
by putting all tag modifications under the write lock.  I can't see
how doing tag modifications under RCU read locks is any safer than
doing it under a spinning read lock....

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[No subject], David Howells, (Tue Apr 6, 9:19 am)
[No subject], Nick Piggin, (Tue Apr 6, 10:09 am)
Re: An incorrect assumption over radix_tree_tag_get(), David Howells, (Tue Apr 6, 11:52 am)
Re: An incorrect assumption over radix_tree_tag_get(), David Howells, (Tue Apr 6, 12:16 pm)
Re: An incorrect assumption over radix_tree_tag_get(), Dave Chinner, (Tue Apr 6, 4:34 pm)
Re: An incorrect assumption over radix_tree_tag_get(), Nick Piggin, (Wed Apr 7, 12:57 am)