[RFC PATCH 0/3] epoll: read(),write(),ioctl() interface

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi everyone,

This patch series adds support for read(), write(), and ioctl() operations
on eventpolls as well as an associated userspace structure to format the
eventpoll entries delivered via read()/write() buffers. The new structure,
struct epoll, differs from struct epoll_event mainly in that struct epoll
also holds the associated file descriptor. Using the normal I/O interface
to manipulate eventpolls is much neater than using epoll-specific syscalls
while also allowing for greater flexibility (theoretically, pipes could
be used to filter access). Specifically, write() creates, modifies, and/or
removes event entries stored in the supplied buffer, using the userspace
identifier to check whether an entry exists and removing it if no events
are set to trigger it, while read() simply waits for enough events to fill
the provided buffer. As timeout control is essential for polling to be
practical, ioctl() is used to configure an optional timeout, which is
infinite by default.

 Documentation/ioctl/ioctl-number.txt |   1 +
 fs/eventpoll.c                       | 534 ++++++++++++++++++++++++-----------
 include/uapi/linux/eventpoll.h       |  10 +
 3 files changed, 384 insertions(+), 161 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux