Messages in this thread | | | Date | Thu, 15 Mar 2012 18:55:18 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: [patch 0/5] seqlock consolidation |
| |
On Thu, 15 Mar 2012, Al Viro wrote:
> On Thu, Mar 15, 2012 at 01:28:03PM +0100, Thomas Gleixner wrote: > > > The only way out is to lock d->d_lock which is contended, so the > > reader side boosts the writer and waits for the lock to be > > released. Though with the open coded seqlock we have no idea which > > lock we need to take. > > > > Any better ideas ? > > So basically you want RT stuff to know that several areas in fs/dcache.c > (from write_seqcount_begin() to write_seqcount_end()) are protected by > (already held by that point) ->d_lock of corresponding dentries? > > If that's it, I suggest to look for a solution that would express just that... > Or do you want something on the reader side as well?
The problem is the reader side. If the reader preempts the writer then the only way to make progress is to take the lock, but therefor I need to know which lock I should take.
Thanks,
tglx
| |