]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
ceph: use page_offset() in ceph_writepages_start()
authorAlex Elder <elder@inktank.com>
Wed, 3 Apr 2013 20:03:53 +0000 (15:03 -0500)
committerAlex Elder <elder@inktank.com>
Fri, 5 Apr 2013 12:09:49 +0000 (07:09 -0500)
There's one spot in ceph_writepages_start() that open-codes what
page_offset() does safely.  Use the macro so we don't have to worry
about wrapping.

This resolves:
    http://tracker.ceph.com/issues/4648

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
fs/ceph/addr.c

index 67d4965b7661486b692fff79ac95c79047200cf1..6a5a08e817648c463641eb55e59d7484725c6216 100644 (file)
@@ -900,7 +900,7 @@ get_more_pages:
                }
 
                /* submit the write */
-               offset = req->r_data_out.pages[0]->index << PAGE_CACHE_SHIFT;
+               offset = page_offset(req->r_data_out.pages[0]);
                len = min((snap_size ? snap_size : i_size_read(inode)) - offset,
                          (u64)locked_pages << PAGE_CACHE_SHIFT);
                dout("writepages got %d pages at %llu~%llu\n",