Re: [PATCH 1/8] networking/fanotify: declare fanotify socket numbers

From: Evgeniy Polyakov
Date: Mon Sep 14 2009 - 10:07:30 EST


On Mon, Sep 14, 2009 at 01:17:59AM +0100, Jamie Lokier (jamie@xxxxxxxxxxxxx) wrote:
> > When queue is full or you do not have enough RAM. Both are reported at
> > 'sending' time.
>
> Can you ->poll() and wait reliably until the queue will accept an skb?
> (A few spurious EAGAINs/ENOBUFs is ok, as long as it's not the norm).

Not that simple and for memory allocation error just can't.

There is no direct access to remote peer sockets, i.e. to userspace
ones, so one will have to lock netlink table and run over listeners and
check whether they can accept the message and wait/poll for queue size
to become big enough. Netlink table and its locking is not exported,
so effectively there is no simple way to do this.

--
Evgeniy Polyakov
--
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/