diff options
| -rw-r--r-- | fs/fuse/file.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/fs/fuse/file.c b/fs/fuse/file.c index e4f041a11bb5..fc342cf7c2cc 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | /* | 1 | /* |
| 2 | FUSE: Filesystem in Userspace | 2 | FUSE: Filesystem in Userspace |
| 3 | Copyright (C) 2001-2005 Miklos Szeredi <miklos@szeredi.hu> | 3 | Copyright (C) 2001-2006 Miklos Szeredi <miklos@szeredi.hu> |
| 4 | 4 | ||
| 5 | This program can be distributed under the terms of the GNU GPL. | 5 | This program can be distributed under the terms of the GNU GPL. |
| 6 | See the file COPYING. | 6 | See the file COPYING. |
| @@ -565,8 +565,12 @@ static ssize_t fuse_direct_io(struct file *file, const char __user *buf, | |||
| 565 | buf += nres; | 565 | buf += nres; |
| 566 | if (nres != nbytes) | 566 | if (nres != nbytes) |
| 567 | break; | 567 | break; |
| 568 | if (count) | 568 | if (count) { |
| 569 | fuse_reset_request(req); | 569 | fuse_put_request(fc, req); |
| 570 | req = fuse_get_req(fc); | ||
| 571 | if (IS_ERR(req)) | ||
| 572 | break; | ||
| 573 | } | ||
| 570 | } | 574 | } |
| 571 | fuse_put_request(fc, req); | 575 | fuse_put_request(fc, req); |
| 572 | if (res > 0) { | 576 | if (res > 0) { |
