ocfs2: Pagecache usage optimization on ocfs2
authorHisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
Thu, 5 Mar 2009 08:22:21 +0000 (17:22 +0900)
committerMark Fasheh <mfasheh@suse.com>
Fri, 3 Apr 2009 18:39:26 +0000 (11:39 -0700)
commit1fca3a05ef2823830925dfb66711d6d920265a8d
tree95717db99015caf84c8c90ab94af093b3d75d731
parent6ca497a83e592d64e050c4d04b6dedb8c915f39a
ocfs2: Pagecache usage optimization on ocfs2

A page can have multiple buffers and even if a page is not uptodate, some buffers
can be uptodate on pagesize != blocksize environment.
This aops checks that all buffers which correspond to a part of a file
that we want to read are uptodate. If so, we do not have to issue actual
read IO to HDD even if a page is not uptodate because the portion we
want to read are uptodate.
"block_is_partially_uptodate" function is already used by ext2/3/4.
With the following patch random read/write mixed workloads or random read after
random write workloads can be optimized and we can get performance improvement.

Signed-off-by: Hisashi Hifumi <hifumi.hisashi@oss.ntt.co.jp>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
fs/ocfs2/aops.c