Re: [PATCH 1/8] Notifier chain update

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

 



On Wed, 18 Jan 2006, Benjamin LaHaise wrote:

> On Wed, Jan 18, 2006 at 11:34:12AM -0500, Alan Stern wrote:
> > There are some limitations, which should not be too hard to live with.
> > For atomic/blocking chains, registration and unregistration must
> > always be done in a process context since the chain is protected by a
> > mutex/rwsem.  Also, a callout routine for a non-raw chain must not try
> > to register or unregister entries on its own chain.  (This did happen
> > in a couple of places and the code had to be changed to avoid it.)
> 
> This is bad, as rwsems are pretty much guaranteed to be a cache miss on 
> smp systems, so their addition makes these code paths scale much more 
> poorly than is needed.  Given the current approach to modules, would it 
> not make sense to simply require that any code that the notifier paths 
> touch simply remain loaded in the kernel?  In that case rcu protection 
> of the pointers would suffice for the hooks.

You can't use RCU protection around code that may sleep.  Whether the code
remains loaded in the kernel or is part of a removable module doesn't
enter into it.

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