summaryrefslogtreecommitdiff
path: root/libdde_linux26/contrib/include/linux/eventpoll.h
diff options
context:
space:
mode:
Diffstat (limited to 'libdde_linux26/contrib/include/linux/eventpoll.h')
-rw-r--r--libdde_linux26/contrib/include/linux/eventpoll.h109
1 files changed, 0 insertions, 109 deletions
diff --git a/libdde_linux26/contrib/include/linux/eventpoll.h b/libdde_linux26/contrib/include/linux/eventpoll.h
deleted file mode 100644
index f1e1d3c4..00000000
--- a/libdde_linux26/contrib/include/linux/eventpoll.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * include/linux/eventpoll.h ( Efficent event polling implementation )
- * Copyright (C) 2001,...,2006 Davide Libenzi
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * Davide Libenzi <davidel@xmailserver.org>
- *
- */
-
-#ifndef _LINUX_EVENTPOLL_H
-#define _LINUX_EVENTPOLL_H
-
-/* For O_CLOEXEC */
-#include <linux/fcntl.h>
-#include <linux/types.h>
-
-/* Flags for epoll_create1. */
-#define EPOLL_CLOEXEC O_CLOEXEC
-
-/* Valid opcodes to issue to sys_epoll_ctl() */
-#define EPOLL_CTL_ADD 1
-#define EPOLL_CTL_DEL 2
-#define EPOLL_CTL_MOD 3
-
-/* Set the One Shot behaviour for the target file descriptor */
-#define EPOLLONESHOT (1 << 30)
-
-/* Set the Edge Triggered behaviour for the target file descriptor */
-#define EPOLLET (1 << 31)
-
-/*
- * On x86-64 make the 64bit structure have the same alignment as the
- * 32bit structure. This makes 32bit emulation easier.
- *
- * UML/x86_64 needs the same packing as x86_64
- */
-#ifdef __x86_64__
-#define EPOLL_PACKED __attribute__((packed))
-#else
-#define EPOLL_PACKED
-#endif
-
-struct epoll_event {
- __u32 events;
- __u64 data;
-} EPOLL_PACKED;
-
-#ifdef __KERNEL__
-
-/* Forward declarations to avoid compiler errors */
-struct file;
-
-
-#ifdef CONFIG_EPOLL
-
-/* Used to initialize the epoll bits inside the "struct file" */
-static inline void eventpoll_init_file(struct file *file)
-{
- INIT_LIST_HEAD(&file->f_ep_links);
- spin_lock_init(&file->f_ep_lock);
-}
-
-
-/* Used to release the epoll bits inside the "struct file" */
-void eventpoll_release_file(struct file *file);
-
-/*
- * This is called from inside fs/file_table.c:__fput() to unlink files
- * from the eventpoll interface. We need to have this facility to cleanup
- * correctly files that are closed without being removed from the eventpoll
- * interface.
- */
-static inline void eventpoll_release(struct file *file)
-{
-
- /*
- * Fast check to avoid the get/release of the semaphore. Since
- * we're doing this outside the semaphore lock, it might return
- * false negatives, but we don't care. It'll help in 99.99% of cases
- * to avoid the semaphore lock. False positives simply cannot happen
- * because the file in on the way to be removed and nobody ( but
- * eventpoll ) has still a reference to this file.
- */
- if (likely(list_empty(&file->f_ep_links)))
- return;
-
- /*
- * The file is being closed while it is still linked to an epoll
- * descriptor. We need to handle this by correctly unlinking it
- * from its containers.
- */
- eventpoll_release_file(file);
-}
-
-#else
-
-static inline void eventpoll_init_file(struct file *file) {}
-static inline void eventpoll_release(struct file *file) {}
-
-#endif
-
-#endif /* #ifdef __KERNEL__ */
-
-#endif /* #ifndef _LINUX_EVENTPOLL_H */
-