1/* 2 * include/linux/timerfd.h 3 * 4 * Copyright (C) 2007 Davide Libenzi <davidel@xmailserver.org> 5 * 6 */ 7 8#ifndef _LINUX_TIMERFD_H 9#define _LINUX_TIMERFD_H 10 11/* For O_CLOEXEC and O_NONBLOCK */ 12#include <linux/fcntl.h> 13 14/* For _IO helpers */ 15#include <linux/ioctl.h> 16 17/* 18 * CAREFUL: Check include/asm-generic/fcntl.h when defining 19 * new flags, since they might collide with O_* ones. We want 20 * to re-use O_* flags that couldn't possibly have a meaning 21 * from eventfd, in order to leave a free define-space for 22 * shared O_* flags. 23 */ 24#define TFD_TIMER_ABSTIME (1 << 0) 25#define TFD_TIMER_CANCEL_ON_SET (1 << 1) 26#define TFD_CLOEXEC O_CLOEXEC 27#define TFD_NONBLOCK O_NONBLOCK 28 29#define TFD_SHARED_FCNTL_FLAGS (TFD_CLOEXEC | TFD_NONBLOCK) 30/* Flags for timerfd_create. */ 31#define TFD_CREATE_FLAGS TFD_SHARED_FCNTL_FLAGS 32/* Flags for timerfd_settime. */ 33#define TFD_SETTIME_FLAGS (TFD_TIMER_ABSTIME | TFD_TIMER_CANCEL_ON_SET) 34 35#define TFD_IOC_SET_TICKS _IOW('T', 0, u64) 36 37#endif /* _LINUX_TIMERFD_H */ 38