diff options
Diffstat (limited to 'vlib')
-rw-r--r-- | vlib/vlib/unix/input.c | 2 | ||||
-rw-r--r-- | vlib/vlib/unix/unix.h | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/vlib/vlib/unix/input.c b/vlib/vlib/unix/input.c index f9d7feceeb5..62b32544b94 100644 --- a/vlib/vlib/unix/input.c +++ b/vlib/vlib/unix/input.c @@ -72,6 +72,8 @@ linux_epoll_file_update (unix_file_t * f, e.events = EPOLLIN; if (f->flags & UNIX_FILE_DATA_AVAILABLE_TO_WRITE) e.events |= EPOLLOUT; + if (f->flags & UNIX_FILE_EVENT_EDGE_TRIGGERED) + e.events |= EPOLLET; e.data.u32 = f - um->file_pool; if (epoll_ctl (em->epoll_fd, diff --git a/vlib/vlib/unix/unix.h b/vlib/vlib/unix/unix.h index 0802a93baa3..e3e6aa14176 100644 --- a/vlib/vlib/unix/unix.h +++ b/vlib/vlib/unix/unix.h @@ -51,6 +51,7 @@ typedef struct unix_file { u32 flags; #define UNIX_FILE_DATA_AVAILABLE_TO_WRITE (1 << 0) +#define UNIX_FILE_EVENT_EDGE_TRIGGERED (1 << 1) /* Data available for function's use. */ uword private_data; |