summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/ioctl.c
diff options
context:
space:
mode:
authorNikolay Borisov <nborisov@suse.com>2019-08-26 10:34:24 -0400
committerDavid Sterba <dsterba@suse.com>2019-09-09 08:59:14 -0400
commitebc87351e5fc43022f687c01daca7e013837ae11 (patch)
tree038ee48f2552a9f345e3a3648829d5ae596344a6 /fs/btrfs/ioctl.c
parent762bf09893b42d1ac8f7f4c02b86e3143b99e61f (diff)
btrfs: Deprecate BTRFS_SUBVOL_CREATE_ASYNC flag
Support for asynchronous snapshot creation was originally added in 72fd032e9424 ("Btrfs: add SNAP_CREATE_ASYNC ioctl") to cater for ceph's backend needs. However, since Ceph has deprecated support for btrfs there is no longer need for that support in btrfs. Additionally, this was never supported by btrfs-progs, the official userspace tools. Reviewed-by: Qu Wenruo <wqu@suse.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'fs/btrfs/ioctl.c')
-rw-r--r--fs/btrfs/ioctl.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 4eabd419aaca..5942615be398 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -1841,8 +1841,15 @@ static noinline int btrfs_ioctl_snap_create_v2(struct file *file,
1841 goto free_args; 1841 goto free_args;
1842 } 1842 }
1843 1843
1844 if (vol_args->flags & BTRFS_SUBVOL_CREATE_ASYNC) 1844 if (vol_args->flags & BTRFS_SUBVOL_CREATE_ASYNC) {
1845 struct inode *inode = file_inode(file);
1846 struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
1847
1848 btrfs_warn(fs_info,
1849"SNAP_CREATE_V2 ioctl with CREATE_ASYNC is deprecated and will be removed in kernel 5.7");
1850
1845 ptr = &transid; 1851 ptr = &transid;
1852 }
1846 if (vol_args->flags & BTRFS_SUBVOL_RDONLY) 1853 if (vol_args->flags & BTRFS_SUBVOL_RDONLY)
1847 readonly = true; 1854 readonly = true;
1848 if (vol_args->flags & BTRFS_SUBVOL_QGROUP_INHERIT) { 1855 if (vol_args->flags & BTRFS_SUBVOL_QGROUP_INHERIT) {
@@ -4191,6 +4198,9 @@ static noinline long btrfs_ioctl_start_sync(struct btrfs_root *root,
4191 u64 transid; 4198 u64 transid;
4192 int ret; 4199 int ret;
4193 4200
4201 btrfs_warn(root->fs_info,
4202 "START_SYNC ioctl is deprecated and will be removed in kernel 5.7");
4203
4194 trans = btrfs_attach_transaction_barrier(root); 4204 trans = btrfs_attach_transaction_barrier(root);
4195 if (IS_ERR(trans)) { 4205 if (IS_ERR(trans)) {
4196 if (PTR_ERR(trans) != -ENOENT) 4206 if (PTR_ERR(trans) != -ENOENT)
@@ -4218,6 +4228,9 @@ static noinline long btrfs_ioctl_wait_sync(struct btrfs_fs_info *fs_info,
4218{ 4228{
4219 u64 transid; 4229 u64 transid;
4220 4230
4231 btrfs_warn(fs_info,
4232 "WAIT_SYNC ioctl is deprecated and will be removed in kernel 5.7");
4233
4221 if (argp) { 4234 if (argp) {
4222 if (copy_from_user(&transid, argp, sizeof(transid))) 4235 if (copy_from_user(&transid, argp, sizeof(transid)))
4223 return -EFAULT; 4236 return -EFAULT;