[PATCH v3 0/1] Generalize poll events from eventfd

From: Damian Hobson-Garcia
Date: Wed Oct 14 2015 - 21:43:13 EST


Using eventfd user space can generate POLLIN/POLLOUT events but some
applications may want to generate POLLPRI/POLLERR events as well.
This patch submission aims to generalize the events generated by an
eventfd. This is a resubmission of a patch from Feb 2013[1]. The original
discussion trailed off without any conclusion, but the original author
has recently confirmed[2] that this functionality is still useful, so I
volunteered to rebase and resubmit the patch for discussion.

[1] https://lkml.org/lkml/2013/2/18/147
[2] https://lkml.org/lkml/2015/7/9/153

Changes in v3
-------------
* replace efd_mask structure with scalar 'events' variable.

Changes in v2
-------------

* rebased on Linux v4.3-rc1
* Move file operation implementations for EFD_MASK to a seperate structure
* Remove 'data' element from efd_mask structure
* read() is no longer supported when EFD_MASK is set (fails with EINVAL)
* eventfd_ctx_fileget() now returns EINVAL when EFD_MASK is set, eliminating
the possibility of triggering the orginal BUG_ON() macros which have now
been removed.

Thank you,
Damian

Martin Sustrik (1):
eventfd: implementation of EFD_MASK flag

fs/eventfd.c | 91 ++++++++++++++++++++++++++++++++++++++------
include/linux/eventfd.h | 16 +-------
include/uapi/linux/eventfd.h | 40 +++++++++++++++++++
3 files changed, 121 insertions(+), 26 deletions(-)
create mode 100644 include/uapi/linux/eventfd.h

--
1.9.1

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