blob: 2d0792983f8c2d7500b8e7a595b48b36ff6579f2 [file] [log] [blame]
Davide Libenzib215e282007-05-10 22:23:16 -07001/*
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
Ulrich Drepper6b1ef0e2008-07-23 21:29:39 -070011/* For O_CLOEXEC and O_NONBLOCK */
Ulrich Drepper11fcb6c2008-07-23 21:29:26 -070012#include <linux/fcntl.h>
Davide Libenzib215e282007-05-10 22:23:16 -070013
Davide Libenzi610d18f2009-02-18 14:48:18 -080014/*
15 * CAREFUL: Check include/asm-generic/fcntl.h when defining
16 * new flags, since they might collide with O_* ones. We want
17 * to re-use O_* flags that couldn't possibly have a meaning
18 * from eventfd, in order to leave a free define-space for
19 * shared O_* flags.
20 */
Davide Libenzib215e282007-05-10 22:23:16 -070021#define TFD_TIMER_ABSTIME (1 << 0)
Ulrich Drepper11fcb6c2008-07-23 21:29:26 -070022#define TFD_CLOEXEC O_CLOEXEC
Ulrich Drepper6b1ef0e2008-07-23 21:29:39 -070023#define TFD_NONBLOCK O_NONBLOCK
Davide Libenzib215e282007-05-10 22:23:16 -070024
Davide Libenzi610d18f2009-02-18 14:48:18 -080025#define TFD_SHARED_FCNTL_FLAGS (TFD_CLOEXEC | TFD_NONBLOCK)
26/* Flags for timerfd_create. */
27#define TFD_CREATE_FLAGS TFD_SHARED_FCNTL_FLAGS
28/* Flags for timerfd_settime. */
29#define TFD_SETTIME_FLAGS TFD_TIMER_ABSTIME
Davide Libenzib215e282007-05-10 22:23:16 -070030
31#endif /* _LINUX_TIMERFD_H */