Messages in this thread Patch in this message | | | Subject | [PATCH 5/6] fuse: Do some refactoring in fuse_dev_do_write() | From | Kirill Tkhai <> | Date | Tue, 06 Nov 2018 12:30:55 +0300 |
| |
This is needed for next patch.
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> --- fs/fuse/dev.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index c603f1ebf0fd..315d395d5c02 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c @@ -1955,18 +1955,14 @@ static ssize_t fuse_dev_do_write(struct fuse_dev *fud, __fuse_get_request(req); spin_unlock(&fpq->lock); - err = -EINVAL; - if (nbytes != sizeof(struct fuse_out_header)) { - fuse_put_request(fc, req); - goto err_finish; - } - - if (oh.error == -ENOSYS) + if (nbytes != sizeof(struct fuse_out_header)) + nbytes = -EINVAL; + else if (oh.error == -ENOSYS) fc->no_interrupt = 1; else if (oh.error == -EAGAIN) queue_interrupt(&fc->iq, req); - fuse_put_request(fc, req); + fuse_put_request(fc, req); fuse_copy_finish(cs); return nbytes; }
| |