Commit 187c5c36 authored by Maxim Patlasov's avatar Maxim Patlasov Committed by Miklos Szeredi

fuse: move fuse_release_user_pages() up

fuse_release_user_pages() will be indirectly used by fuse_send_read/write
in future patches.
Signed-off-by: default avatarMaxim Patlasov <mpatlasov@parallels.com>
Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
parent 3c18ef81
...@@ -494,6 +494,18 @@ void fuse_read_fill(struct fuse_req *req, struct file *file, loff_t pos, ...@@ -494,6 +494,18 @@ void fuse_read_fill(struct fuse_req *req, struct file *file, loff_t pos,
req->out.args[0].size = count; req->out.args[0].size = count;
} }
static void fuse_release_user_pages(struct fuse_req *req, int write)
{
unsigned i;
for (i = 0; i < req->num_pages; i++) {
struct page *page = req->pages[i];
if (write)
set_page_dirty_lock(page);
put_page(page);
}
}
static size_t fuse_send_read(struct fuse_req *req, struct file *file, static size_t fuse_send_read(struct fuse_req *req, struct file *file,
loff_t pos, size_t count, fl_owner_t owner) loff_t pos, size_t count, fl_owner_t owner)
{ {
...@@ -1046,18 +1058,6 @@ static ssize_t fuse_file_aio_write(struct kiocb *iocb, const struct iovec *iov, ...@@ -1046,18 +1058,6 @@ static ssize_t fuse_file_aio_write(struct kiocb *iocb, const struct iovec *iov,
return written ? written : err; return written ? written : err;
} }
static void fuse_release_user_pages(struct fuse_req *req, int write)
{
unsigned i;
for (i = 0; i < req->num_pages; i++) {
struct page *page = req->pages[i];
if (write)
set_page_dirty_lock(page);
put_page(page);
}
}
static inline void fuse_page_descs_length_init(struct fuse_req *req, static inline void fuse_page_descs_length_init(struct fuse_req *req,
unsigned index, unsigned nr_pages) unsigned index, unsigned nr_pages)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment