patch-1.3.58 linux/include/linux/mm.h

Next file: linux/include/linux/msdos_fs.h
Previous file: linux/include/linux/minix_fs.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.57/linux/include/linux/mm.h linux/include/linux/mm.h
@@ -105,6 +105,15 @@
 	pte_t (*swapin)(struct vm_area_struct *, unsigned long, unsigned long);
 };
 
+/*
+ * Try to keep the most commonly accessed fields in single cache lines
+ * here (16 bytes or greater).  This ordering should be particularly
+ * beneficial on 32-bit processors.
+ *
+ * The first line is data used in linear searches (eg. clock algorithm
+ * scans).  The second line is data used in page searches through the
+ * page-cache.  -- sct 
+ */
 typedef struct page {
 	unsigned int count;
 	unsigned dirty:16,
@@ -112,14 +121,19 @@
 		 uptodate:1,
 		 error:1,
 		 referenced:1,
-		 unused:4,
+		 locked:1,
+		 unused:3,
 		 reserved:1;
+	struct wait_queue *wait;
+	struct page *next;
+
+	struct page *next_hash;
 	unsigned long offset;
 	struct inode *inode;
-	struct wait_queue *wait;
 	struct page *write_list;
-	struct page *next, *prev;
-	struct page *next_hash, *prev_hash;
+
+	struct page *prev;
+	struct page *prev_hash;
 } mem_map_t;
 
 extern mem_map_t * mem_map;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this