On 14/06/2015 14:37, Olivier Brunel wrote:
Because of the buffered IO, the possible scenario could occur:
- netlink uevents (plural) occur, i.e. data ready on stdin
- iopause triggered, handle_stdin() called. The first uevent is processed, child
   launched, we're waiting for a signal
- SIGCHLD occurs, we're back to iopausing on stdin again, only it's not ready
   yet; Because we've read it all already and still have unprocessed data
   (uevents) on our own internal buffer (buffer_0)

 Right, thanks for the catch. I usually avoid that trap, but meh.
 I committed a simpler change than your patch, please tell me if it fixes
things for you.

--
 Laurent

Reply via email to