[PATCH] fuse: clean up page offset calculation
authorMiklos Szeredi <miklos@szeredi.hu>
Fri, 6 Jan 2006 08:19:36 +0000 (00:19 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Fri, 6 Jan 2006 16:33:55 +0000 (08:33 -0800)
Use page_offset() instead of doing page offset calculation by hand.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/fuse/file.c

index 2ca8614..18aafa6 100644 (file)
@@ -272,7 +272,6 @@ static int fuse_readpage(struct file *file, struct page *page)
 {
        struct inode *inode = page->mapping->host;
        struct fuse_conn *fc = get_fuse_conn(inode);
-       loff_t pos = (loff_t) page->index << PAGE_CACHE_SHIFT;
        struct fuse_req *req = fuse_get_request(fc);
        int err = -EINTR;
        if (!req)
@@ -281,7 +280,7 @@ static int fuse_readpage(struct file *file, struct page *page)
        req->out.page_zeroing = 1;
        req->num_pages = 1;
        req->pages[0] = page;
-       fuse_send_read(req, file, inode, pos, PAGE_CACHE_SIZE);
+       fuse_send_read(req, file, inode, page_offset(page), PAGE_CACHE_SIZE);
        err = req->out.h.error;
        fuse_put_request(fc, req);
        if (!err)
@@ -295,7 +294,7 @@ static int fuse_readpage(struct file *file, struct page *page)
 static int fuse_send_readpages(struct fuse_req *req, struct file *file,
                               struct inode *inode)
 {
-       loff_t pos = (loff_t) req->pages[0]->index << PAGE_CACHE_SHIFT;
+       loff_t pos = page_offset(req->pages[0]);
        size_t count = req->num_pages << PAGE_CACHE_SHIFT;
        unsigned i;
        req->out.page_zeroing = 1;
@@ -402,7 +401,7 @@ static int fuse_commit_write(struct file *file, struct page *page,
        unsigned count = to - offset;
        struct inode *inode = page->mapping->host;
        struct fuse_conn *fc = get_fuse_conn(inode);
-       loff_t pos = ((loff_t) page->index << PAGE_CACHE_SHIFT) + offset;
+       loff_t pos = page_offset(page) + offset;
        struct fuse_req *req = fuse_get_request(fc);
        if (!req)
                return -EINTR;