summaryrefslogtreecommitdiffstats
path: root/include/linux/poll.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1998-03-17 22:05:47 +0000
committerRalf Baechle <ralf@linux-mips.org>1998-03-17 22:05:47 +0000
commit27cfca1ec98e91261b1a5355d10a8996464b63af (patch)
tree8e895a53e372fa682b4c0a585b9377d67ed70d0e /include/linux/poll.h
parent6a76fb7214c477ccf6582bd79c5b4ccc4f9c41b1 (diff)
Look Ma' what I found on my harddisk ...
o New faster syscalls for 2.1.x, too o Upgrade to 2.1.89. Don't try to run this. It's flaky as hell. But feel free to debug ...
Diffstat (limited to 'include/linux/poll.h')
-rw-r--r--include/linux/poll.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/include/linux/poll.h b/include/linux/poll.h
index 01c4d1519..b849b5751 100644
--- a/include/linux/poll.h
+++ b/include/linux/poll.h
@@ -1,4 +1,5 @@
#ifndef _LINUX_POLL_H
+#define _LINUX_POLL_H
#include <asm/poll.h>
@@ -10,6 +11,7 @@
struct poll_table_entry {
+ struct file * filp;
struct wait_queue wait;
struct wait_queue ** wait_address;
};
@@ -21,7 +23,7 @@ typedef struct poll_table_struct {
#define __MAX_POLL_TABLE_ENTRIES (PAGE_SIZE / sizeof (struct poll_table_entry))
-extern inline void poll_wait(struct wait_queue ** wait_address, poll_table *p)
+extern inline void poll_wait(struct file * filp, struct wait_queue ** wait_address, poll_table *p)
{
struct poll_table_entry * entry;
@@ -30,6 +32,8 @@ extern inline void poll_wait(struct wait_queue ** wait_address, poll_table *p)
if (p->nr >= __MAX_POLL_TABLE_ENTRIES)
return;
entry = p->entry + p->nr;
+ entry->filp = filp;
+ filp->f_count++;
entry->wait_address = wait_address;
entry->wait.task = current;
entry->wait.next = NULL;