vfs: no mnt_want_write_file() in vfs_{copy,clone}_file_range()
We've checked for file_out being opened for write. This ensures that we already have mnt_want_write() on target. Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
This commit is contained in:
parent
8d3e293637
commit
3616119da4
|
@ -1538,9 +1538,7 @@ ssize_t vfs_copy_file_range(struct file *file_in, loff_t pos_in,
|
||||||
if (len == 0)
|
if (len == 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ret = mnt_want_write_file(file_out);
|
sb_start_write(inode_out->i_sb);
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
ret = -EOPNOTSUPP;
|
ret = -EOPNOTSUPP;
|
||||||
if (file_out->f_op->copy_file_range)
|
if (file_out->f_op->copy_file_range)
|
||||||
|
@ -1559,7 +1557,7 @@ ssize_t vfs_copy_file_range(struct file *file_in, loff_t pos_in,
|
||||||
inc_syscr(current);
|
inc_syscr(current);
|
||||||
inc_syscw(current);
|
inc_syscw(current);
|
||||||
|
|
||||||
mnt_drop_write_file(file_out);
|
sb_end_write(inode_out->i_sb);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -1685,9 +1683,7 @@ int vfs_clone_file_range(struct file *file_in, loff_t pos_in,
|
||||||
if (pos_in + len > i_size_read(inode_in))
|
if (pos_in + len > i_size_read(inode_in))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
ret = mnt_want_write_file(file_out);
|
sb_start_write(inode_out->i_sb);
|
||||||
if (ret)
|
|
||||||
return ret;
|
|
||||||
|
|
||||||
ret = file_in->f_op->clone_file_range(file_in, pos_in,
|
ret = file_in->f_op->clone_file_range(file_in, pos_in,
|
||||||
file_out, pos_out, len);
|
file_out, pos_out, len);
|
||||||
|
@ -1696,7 +1692,7 @@ int vfs_clone_file_range(struct file *file_in, loff_t pos_in,
|
||||||
fsnotify_modify(file_out);
|
fsnotify_modify(file_out);
|
||||||
}
|
}
|
||||||
|
|
||||||
mnt_drop_write_file(file_out);
|
sb_end_write(inode_out->i_sb);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(vfs_clone_file_range);
|
EXPORT_SYMBOL(vfs_clone_file_range);
|
||||||
|
|
Loading…
Reference in New Issue