fuse: rework fuse_do_ioctl()
authorMaxim Patlasov <mpatlasov@parallels.com>
Fri, 26 Oct 2012 15:49:13 +0000 (19:49 +0400)
committerMiklos Szeredi <mszeredi@suse.cz>
Thu, 24 Jan 2013 15:21:26 +0000 (16:21 +0100)
fuse_do_ioctl() already calculates the number of pages it's going to use. It is
stored in 'num_pages' variable. So the patch simply uses it for allocating
fuse_req.

Signed-off-by: Maxim Patlasov <mpatlasov@parallels.com>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/fuse/file.c

index b997250..fdb5b33 100644 (file)
@@ -1894,7 +1894,7 @@ long fuse_do_ioctl(struct file *file, unsigned int cmd, unsigned long arg,
                num_pages++;
        }
 
-       req = fuse_get_req(fc, FUSE_MAX_PAGES_PER_REQ);
+       req = fuse_get_req(fc, num_pages);
        if (IS_ERR(req)) {
                err = PTR_ERR(req);
                req = NULL;