|
@@ -610,7 +610,9 @@ static ssize_t fuse_direct_write(struct file *file, const char __user *buf,
|
|
|
ssize_t res;
|
|
|
/* Don't allow parallel writes to the same file */
|
|
|
mutex_lock(&inode->i_mutex);
|
|
|
- res = fuse_direct_io(file, buf, count, ppos, 1);
|
|
|
+ res = generic_write_checks(file, ppos, &count, 0);
|
|
|
+ if (!res)
|
|
|
+ res = fuse_direct_io(file, buf, count, ppos, 1);
|
|
|
mutex_unlock(&inode->i_mutex);
|
|
|
return res;
|
|
|
}
|