diff options
author | 2006-02-09 04:29:00 -0500 | |
---|---|---|
committer | 2006-02-09 04:29:00 -0500 | |
commit | 9caafa6c8686e319cf4d5f3757b3972c6c522b7c (patch) | |
tree | b38979b835b5d22e681b175d0b98a3c7560d9c59 /fs/fuse/file.c | |
parent | [libata sata_sil] implement 'slow_down' module parameter (diff) | |
parent | Merge branch 'master' (diff) | |
download | linux-dev-9caafa6c8686e319cf4d5f3757b3972c6c522b7c.tar.xz linux-dev-9caafa6c8686e319cf4d5f3757b3972c6c522b7c.zip |
Merge branch 'upstream-fixes'
Diffstat (limited to 'fs/fuse/file.c')
-rw-r--r-- | fs/fuse/file.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index a7ef5e716f3c..296351615b00 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -335,9 +335,14 @@ static void fuse_send_readpages(struct fuse_req *req, struct file *file, loff_t pos = page_offset(req->pages[0]); size_t count = req->num_pages << PAGE_CACHE_SHIFT; req->out.page_zeroing = 1; - req->end = fuse_readpages_end; fuse_read_fill(req, file, inode, pos, count, FUSE_READ); - request_send_background(fc, req); + if (fc->async_read) { + req->end = fuse_readpages_end; + request_send_background(fc, req); + } else { + request_send(fc, req); + fuse_readpages_end(fc, req); + } } struct fuse_readpages_data { |