summaryrefslogtreecommitdiffstats
path: root/fs/ceph/file.c
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2010-04-22 13:48:59 -0700
committerSage Weil <sage@newdream.net>2010-05-03 10:49:25 -0700
commit5c6a2cdb4fe8aaf6b54f022c14f13d2a12b45914 (patch)
tree68b777f391b68f91ba8c587ded4f9d9526f9279a /fs/ceph/file.c
parentae18756b9fa7bb93132cff06cd8575e3d46633f9 (diff)
downloadop-kernel-dev-5c6a2cdb4fe8aaf6b54f022c14f13d2a12b45914.zip
op-kernel-dev-5c6a2cdb4fe8aaf6b54f022c14f13d2a12b45914.tar.gz
ceph: fix direct io truncate offset
truncate_inode_pages_range wants the end offset to align with the last byte in a page. Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph/file.c')
-rw-r--r--fs/ceph/file.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ceph/file.c b/fs/ceph/file.c
index 4add3d5..ed6f197 100644
--- a/fs/ceph/file.c
+++ b/fs/ceph/file.c
@@ -665,7 +665,8 @@ more:
* throw out any page cache pages in this range. this
* may block.
*/
- truncate_inode_pages_range(inode->i_mapping, pos, pos+len);
+ truncate_inode_pages_range(inode->i_mapping, pos,
+ (pos+len) | (PAGE_CACHE_SIZE-1));
} else {
pages = alloc_page_vector(num_pages);
if (IS_ERR(pages)) {
OpenPOWER on IntegriCloud