diff options
author | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2009-05-26 18:27:12 -0400 |
---|---|---|
committer | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2009-06-10 10:41:11 -0400 |
commit | e85dc1d5295779d2e6d973b7ed524d6bd3825a3f (patch) | |
tree | 8f13c049839deb9f6cde4deb440b2a3758f10f64 /fs/nilfs2 | |
parent | 30bda0b8ae470997dc681d6fd82108bac5caebf8 (diff) |
nilfs2: enable sync_page method
This adds a missing sync_page method which unplugs bio requests when
waiting for page locks. This will improve read performance of nilfs.
Here is a measurement result using dd command.
Without this patch:
# mount -t nilfs2 /dev/sde1 /test
# dd if=/test/aaa of=/dev/null bs=512k
1024+0 records in
1024+0 records out
536870912 bytes (537 MB) copied, 6.00688 seconds, 89.4 MB/s
With this patch:
# mount -t nilfs2 /dev/sde1 /test
# dd if=/test/aaa of=/dev/null bs=512k
1024+0 records in
1024+0 records out
536870912 bytes (537 MB) copied, 3.54998 seconds, 151 MB/s
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Diffstat (limited to 'fs/nilfs2')
-rw-r--r-- | fs/nilfs2/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nilfs2/inode.c b/fs/nilfs2/inode.c index 3f70eedc0de8..f25fd4b895bc 100644 --- a/fs/nilfs2/inode.c +++ b/fs/nilfs2/inode.c | |||
@@ -240,7 +240,7 @@ nilfs_direct_IO(int rw, struct kiocb *iocb, const struct iovec *iov, | |||
240 | struct address_space_operations nilfs_aops = { | 240 | struct address_space_operations nilfs_aops = { |
241 | .writepage = nilfs_writepage, | 241 | .writepage = nilfs_writepage, |
242 | .readpage = nilfs_readpage, | 242 | .readpage = nilfs_readpage, |
243 | /* .sync_page = nilfs_sync_page, */ | 243 | .sync_page = block_sync_page, |
244 | .writepages = nilfs_writepages, | 244 | .writepages = nilfs_writepages, |
245 | .set_page_dirty = nilfs_set_page_dirty, | 245 | .set_page_dirty = nilfs_set_page_dirty, |
246 | .readpages = nilfs_readpages, | 246 | .readpages = nilfs_readpages, |