Re: [PATCH 1/8] Notifier chain update

From: David S. Miller
Date: Wed Jan 18 2006 - 16:59:40 EST


From: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 18 Jan 2006 16:57:30 -0500 (EST)

> On Wed, 18 Jan 2006, Benjamin LaHaise wrote:
>
> > A notifier callee should not be sleeping, if anything it should be putting
> > its work onto a workqueue and completing it when it gets scheduled if it
> > has to do something that blocks.
>
> Sez who? If it's not documented in the kernel source, I don't believe
> it.

Many notifiers even get run from software interrupt context,
making sleeping illegal.

For example, IPV6 addresses can get added/removed from a device
in response to packets, and these operations trigger the
inet6addr_chain notifier in net/ipv6/addrconf.c

So sleeping in a notifier is indeed illegal.
-
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/