summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorAndrew Morton <akpm@zip.com.au>2002-04-29 23:54:08 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2002-04-29 23:54:08 -0700
commitf15fe42437fb78d9ffae53a7c40be1c5939330e9 (patch)
tree0ab8937db82035566f73c684bb606adca5cbe535 /include/linux
parent39e8cdf731118a140eca48e69cc31ff53abe2d64 (diff)
[PATCH] hashed b_wait
Implements hashed waitqueues for buffer_heads. Drops twelve bytes from struct buffer_head.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/buffer_head.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/include/linux/buffer_head.h b/include/linux/buffer_head.h
index daf9b1c6d7d1..20a586b730ca 100644
--- a/include/linux/buffer_head.h
+++ b/include/linux/buffer_head.h
@@ -56,9 +56,6 @@ struct buffer_head {
char * b_data; /* pointer to data block */
bh_end_io_t *b_end_io; /* I/O completion */
void *b_private; /* reserved for b_end_io */
-
- wait_queue_head_t b_wait;
-
struct list_head b_inode_buffers; /* list of inode dirty buffers */
};
@@ -166,6 +163,8 @@ void invalidate_bdev(struct block_device *, int);
void __invalidate_buffers(kdev_t dev, int);
int sync_buffers(struct block_device *, int);
void __wait_on_buffer(struct buffer_head *);
+void sleep_on_buffer(struct buffer_head *bh);
+void wake_up_buffer(struct buffer_head *bh);
int fsync_dev(kdev_t);
int fsync_bdev(struct block_device *);
int fsync_super(struct super_block *);