1#ifndef __ASM_GENERIC_POLL_H 2#define __ASM_GENERIC_POLL_H 3 4/* These are specified by iBCS2 */ 5#define POLLIN 0x0001 6#define POLLPRI 0x0002 7#define POLLOUT 0x0004 8#define POLLERR 0x0008 9#define POLLHUP 0x0010 10#define POLLNVAL 0x0020 11 12/* The rest seem to be more-or-less nonstandard. Check them! */ 13#define POLLRDNORM 0x0040 14#define POLLRDBAND 0x0080 15#ifndef POLLWRNORM 16#define POLLWRNORM 0x0100 17#endif 18#ifndef POLLWRBAND 19#define POLLWRBAND 0x0200 20#endif 21#ifndef POLLMSG 22#define POLLMSG 0x0400 23#endif 24#ifndef POLLREMOVE 25#define POLLREMOVE 0x1000 26#endif 27#ifndef POLLRDHUP 28#define POLLRDHUP 0x2000 29#endif 30 31#define POLLFREE 0x4000 /* currently only for epoll */ 32 33#define POLL_BUSY_LOOP 0x8000 34 35struct pollfd { 36 int fd; 37 short events; 38 short revents; 39}; 40 41#endif /* __ASM_GENERIC_POLL_H */ 42