Browse Source

readahead: mmap read-around simplification

Fold file_ra_state.mmap_hit into file_ra_state.mmap_miss and make it an int.

Signed-off-by: Fengguang Wu <wfg@mail.ustc.edu.cn>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Fengguang Wu 17 years ago
parent
commit
0bb7ba6b9c
2 changed files with 3 additions and 4 deletions
  1. 1 2
      include/linux/fs.h
  2. 2 2
      mm/filemap.c

+ 1 - 2
include/linux/fs.h

@@ -703,8 +703,7 @@ struct file_ra_state {
 					   there are only # of pages ahead */
 					   there are only # of pages ahead */
 
 
 	unsigned int ra_pages;		/* Maximum readahead window */
 	unsigned int ra_pages;		/* Maximum readahead window */
-	unsigned long mmap_hit;		/* Cache hit stat for mmap accesses */
-	unsigned long mmap_miss;	/* Cache miss stat for mmap accesses */
+	int mmap_miss;			/* Cache miss stat for mmap accesses */
 	unsigned long prev_index;	/* Cache last read() position */
 	unsigned long prev_index;	/* Cache last read() position */
 	unsigned int prev_offset;	/* Offset where last read() ended in a page */
 	unsigned int prev_offset;	/* Offset where last read() ended in a page */
 };
 };

+ 2 - 2
mm/filemap.c

@@ -1349,7 +1349,7 @@ retry_find:
 		 * Do we miss much more than hit in this file? If so,
 		 * Do we miss much more than hit in this file? If so,
 		 * stop bothering with read-ahead. It will only hurt.
 		 * stop bothering with read-ahead. It will only hurt.
 		 */
 		 */
-		if (ra->mmap_miss > ra->mmap_hit + MMAP_LOTSAMISS)
+		if (ra->mmap_miss > MMAP_LOTSAMISS)
 			goto no_cached_page;
 			goto no_cached_page;
 
 
 		/*
 		/*
@@ -1375,7 +1375,7 @@ retry_find:
 	}
 	}
 
 
 	if (!did_readaround)
 	if (!did_readaround)
-		ra->mmap_hit++;
+		ra->mmap_miss--;
 
 
 	/*
 	/*
 	 * We have a locked page in the page cache, now we need to check
 	 * We have a locked page in the page cache, now we need to check