diff --git a/fs/fuse/file.c b/fs/fuse/file.c index a3492f7d207c32403f482bc2b1ec02fe24e10a51..5887a6395ad2a912e6330a7d13a7270531742131 100644 --- a/fs/fuse/file.c +++ b/fs/fuse/file.c @@ -1063,7 +1063,8 @@ ssize_t fuse_direct_io(struct file *file, const char __user *buf, break; } } - fuse_put_request(fc, req); + if (!IS_ERR(req)) + fuse_put_request(fc, req); if (res > 0) *ppos = pos;