fuse: generic_write_checks() for direct_io
This fixes O_APPEND in direct IO mode. Also checks writes against file size limits, notably rlimits. Reported by Greg Bruno. Signed-off-by: Miklos Szeredi <mszeredi@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
492c8b332e
commit
889f784831
@ -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;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user