chiark / gitweb /
event: allow EPOLLET as event flag
authorDavid Herrmann <dh.herrmann@gmail.com>
Wed, 27 Nov 2013 09:36:35 +0000 (10:36 +0100)
committerDavid Herrmann <dh.herrmann@gmail.com>
Thu, 28 Nov 2013 14:16:49 +0000 (15:16 +0100)
commit2a16a986ce5f1bdb7e96abfe14fcb9f34c9364b6
tree0bf819aa4399d09659ac971bde7312b3f6b0d198
parent90a18413f8be577a649900eca977e060273f2b5b
event: allow EPOLLET as event flag

EPOLLET enables edge-triggered mode (see epoll(7) for more). For most
use-cases, level-triggered is just fine, but for master-TTYs we need
edge-triggered to catch EPOLLHUP. master-TTYs signal EPOLLHUP if no client
is connected, but a client may connect some time later (same happens
during vhangup(2)).

However, epoll doesn't allow masking EPOLLHUP so it's signaled constantly.
To avoid this, edge-triggered mode is needed.
src/libsystemd-bus/sd-event.c