diff -urpN -X /home/fletch/.diff.exclude 170-readahead_fixes/mm/readahead.c 171-readahead_simplify/mm/readahead.c
--- 170-readahead_fixes/mm/readahead.c	Sat Dec 27 14:43:56 2003
+++ 171-readahead_simplify/mm/readahead.c	Sat Dec 27 14:43:59 2003
@@ -454,11 +454,10 @@ do_io:
 			  * in the next current window, read in
 			  * an extra page.
 			  */
-			ra->size = preoffset - ra->start + 2;
-		} else {
-			ra->size = ra->next_size;
+			ra->next_size = preoffset - ra->start + 2;
 		}
 		ra->start = offset;
+		ra->size = ra->next_size;
 		ra->ahead_start = 0;		/* Invalidate these */
 		ra->ahead_size = 0;
 		actual = do_page_cache_readahead(mapping, filp, offset,