Re: [PATCH] Avoid calling down_read and down_write during startup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 24 Feb 2006, Benjamin LaHaise wrote:

> On Fri, Feb 24, 2006 at 11:44:23AM -0500, Alan Stern wrote:
> > In that case you should be worried not about acquiring and releasing the 
> > rwsem at the beginning and end of blocking_notifier_call_chain; you should 
> > be worried about all the RCU serialization in the core 
> > notifier_call_chain routine.
> 
> RCU doesn't synchronize readers.

It does on architectures where smp_read_barrier_depends() expands into
something nontrivial.  Maybe that doesn't include any of the machines
you're interested in.

> > The atomic chains are a different matter.  The ones that don't run in NMI 
> > context could use an rw-spinlock for protection, allowing them also to 
> > avoid memory barriers while going through the list.  The notifier chains 
> > that do run in NMI don't have this luxury.  Fortunately I don't think 
> > there are very many of them.
> 
> A read lock is a memory barrier.  That's why I'm opposed to using non-rcu 
> style locking for them.

But RCU-style locking can't be used in situations where the reader may 
block.  So it's not possible to use it with blocking notifier chains.

Alan Stern

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux