Re: Notifier chains are unsafe

From: Chandra Seetharaman
Date: Tue Oct 25 2005 - 19:01:59 EST


On Wed, 2005-10-26 at 01:43 +0200, Andi Kleen wrote:
> Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> writes:
>
> > Has anyone been bothered by the fact that notifier chains are not safe
> > with regard to registration and unregistration while the chain is in use?
> > The notifier_chain_register and notifier_chain_unregister routines have
> > writelock protections, but the corresponding readlock is never taken!
>
> If you add locks to the reader make sure it is only taken
> if the list is non empty. Otherwise you will add unacceptable
> overhead to some fast paths.
>
> Better would be likely to use RCU.

RCU will be a problem if the registered notifiers need to block.

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

----------------------------------------------------------------------
Chandra Seetharaman | Be careful what you choose....
- sekharan@xxxxxxxxxx | .......you may get it.
----------------------------------------------------------------------


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