patch-2.3.27 linux/include/linux/fs.h

Next file: linux/include/linux/highmem.h
Previous file: linux/include/linux/concap.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.26/linux/include/linux/fs.h linux/include/linux/fs.h
@@ -224,7 +224,8 @@
 	struct buffer_head *b_reqnext;	/* request queue */
 
 	struct buffer_head **b_pprev;	/* doubly linked list of hash-queue */
-	char *b_data;			/* pointer to data block (1024 bytes) */
+	char * b_data;			/* pointer to data block (512 byte) */
+	struct page *b_page;		/* the page this bh is mapped to */
 	void (*b_end_io)(struct buffer_head *bh, int uptodate); /* I/O completion */
 	void *b_dev_id;
 
@@ -246,8 +247,11 @@
 #define buffer_new(bh)		__buffer_state(bh,New)
 #define buffer_protected(bh)	__buffer_state(bh,Protected)
 
-#define buffer_page(bh)		(mem_map + MAP_NR((bh)->b_data))
-#define touch_buffer(bh)	set_bit(PG_referenced, &buffer_page(bh)->flags)
+#define bh_offset(bh)		((unsigned long)(bh)->b_data & ~PAGE_MASK)
+
+extern void set_bh_page(struct buffer_head *bh, struct page *page, unsigned int offset);
+
+#define touch_buffer(bh)	set_bit(PG_referenced, &bh->b_page->flags)
 
 #include <linux/pipe_fs_i.h>
 #include <linux/minix_fs_i.h>
@@ -271,6 +275,7 @@
 #include <linux/bfs_fs_i.h>
 #include <linux/udf_fs_i.h>
 #include <linux/ncp_fs_i.h>
+#include <linux/proc_fs_i.h>
 
 /*
  * Attribute flags.  These should be or-ed together to figure out what
@@ -395,6 +400,7 @@
 		struct bfs_inode_info		bfs_i;
 		struct udf_inode_info		udf_i;
 		struct ncp_inode_info		ncpfs_i;
+		struct proc_inode_info		proc_i;
 		struct socket			socket_i;
 		void				*generic_ip;
 	} u;
@@ -933,6 +939,7 @@
 extern unsigned int get_hardblocksize(kdev_t);
 extern struct buffer_head * bread(kdev_t, int, int);
 extern struct buffer_head * breada(kdev_t, int, int, unsigned int, unsigned int);
+extern void wakeup_bdflush(int wait);
 
 extern int brw_page(int, struct page *, kdev_t, int [], int);
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)