RFD: Rework/extending functionality of mdev

Laurent Bercot ska-dietlibc at skarnet.org
Wed Mar 18 17:41:14 UTC 2015


On 18/03/2015 18:08, Didier Kryn wrote:
> No, you must write to the pipe to detect it is broken. And you won't
> try to write before you've got an event from the netlink. This event
> will be lost.

  I skim over that discussion (because I don't agree with the design) so
I can't make any substantial comments, but here's a nitpick: if you
use an asynchronous event loop, your selector triggers - POLLHUP for
poll(), not sure if it's writability or exception for select()- as
soon as a pipe is broken.

  Note that events can still be lost, because the pipe can be broken
while you're reading a message from the netlink, before you come
back to the selector; so the message you just read cannot be sent.
But that is a risk you have to take everytime you perform buffered IO,
there's no way around it.

-- 
  Laurent


More information about the busybox mailing list