Add a new 'struct epoll' to the userspace eventpoll interface. Buffers supplied to read() & write() calls on eventpolls are interpreted as arrays of this structure. The new structure's only functional difference from epoll_event is it also holds the associated file descriptor (needed for write() to properly create events but useful information in general). Also define the ioctl() command macros to set & get the timeout of an eventpoll. Signed-off-by: Nathaniel Yazdani <n1ght.4nd.d4y@xxxxxxxxx> --- diff --git a/include/uapi/linux/eventpoll.h b/include/uapi/linux/eventpoll.h index bc81fb2..73f817c 100644 --- a/include/uapi/linux/eventpoll.h +++ b/include/uapi/linux/eventpoll.h @@ -56,11 +56,21 @@ #define EPOLL_PACKED #endif +/* ioctl() requests */ +#define EPIOC_GETTIMEOUT _IOR('$', 0x10, int) +#define EPIOC_SETTIMEOUT _IOW('$', 0x11, int) + struct epoll_event { __u32 events; __u64 data; } EPOLL_PACKED; +struct epoll { + int ep_fildes; /* file descriptor */ + int ep_events; /* triggering events */ + long long ep_ident; /* entry ID (cf. epoll_event->data) */ +} EPOLL_PACKED; /* A.K.A. "epe" for "eventpoll entry" */ + #ifdef CONFIG_PM_SLEEP static inline void ep_take_care_of_epollwakeup(struct epoll_event *epev) { -- 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