From: Liu Yuan <tailai.ly@xxxxxxxxxx> The _readpages_ counter simply counts how many pages the kernel really request from the disk, either by readahead module or aop->readpage() when readahead window equals 0. This counter is request-centric and doesnot check read errors since the read requests are issued to the block layer already. Signed-off-by: Liu Yuan <tailai.ly@xxxxxxxxxx> --- mm/filemap.c | 1 + mm/readahead.c | 2 ++ 2 files changed, 3 insertions(+), 0 deletions(-) diff --git a/mm/filemap.c b/mm/filemap.c index 5388b2a..d638391 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -1137,6 +1137,7 @@ readpage: */ ClearPageError(page); /* Start the actual read. The read will unlock the page. */ + page_cache_acct_readpages(mapping->host->i_sb, 1); error = mapping->a_ops->readpage(filp, page); if (unlikely(error)) { diff --git a/mm/readahead.c b/mm/readahead.c index 77506a2..483acb8 100644 --- a/mm/readahead.c +++ b/mm/readahead.c @@ -112,6 +112,8 @@ static int read_pages(struct address_space *mapping, struct file *filp, unsigned page_idx; int ret; + page_cache_acct_readpages(mapping->host->i_sb, nr_pages); + if (mapping->a_ops->readpages) { ret = mapping->a_ops->readpages(filp, mapping, pages, nr_pages); /* Clean up the remaining pages */ -- 1.7.0.4 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>