diff options
author | Badari Pulavarty <pbadari@us.ibm.com> | 2006-03-26 04:38:01 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-26 11:57:01 -0500 |
commit | fa30bd058b746c0e2318a77ff8b4977faa924c2c (patch) | |
tree | a91abdcc4909da5dd16ed1bab91b5764eafed174 /fs/xfs | |
parent | b0cf2321c6599138f860517745503691556d8453 (diff) |
[PATCH] map multiple blocks for mpage_readpages()
This patch changes mpage_readpages() and get_block() to get the disk mapping
information for multiple blocks at the same time.
b_size represents the amount of disk mapping that needs to mapped. On the
successful get_block() b_size indicates the amount of disk mapping thats
actually mapped. Only the filesystems who care to use this information and
provide multiple disk blocks at a time can choose to do so.
No changes are needed for the filesystems who wants to ignore this.
[akpm@osdl.org: cleanups]
Signed-off-by: Badari Pulavarty <pbadari@us.ibm.com>
Cc: Mingming Cao <cmm@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_aops.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/xfs/linux-2.6/xfs_aops.c b/fs/xfs/linux-2.6/xfs_aops.c index 4f2476f188b0..a79b84f8b55c 100644 --- a/fs/xfs/linux-2.6/xfs_aops.c +++ b/fs/xfs/linux-2.6/xfs_aops.c | |||
@@ -1310,8 +1310,9 @@ xfs_get_block( | |||
1310 | struct buffer_head *bh_result, | 1310 | struct buffer_head *bh_result, |
1311 | int create) | 1311 | int create) |
1312 | { | 1312 | { |
1313 | return __xfs_get_block(inode, iblock, 0, bh_result, | 1313 | return __xfs_get_block(inode, iblock, |
1314 | create, 0, BMAPI_WRITE); | 1314 | bh_result->b_size >> inode->i_blkbits, |
1315 | bh_result, create, 0, BMAPI_WRITE); | ||
1315 | } | 1316 | } |
1316 | 1317 | ||
1317 | STATIC int | 1318 | STATIC int |