diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2017-10-05 14:42:39 +0200 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2017-10-05 14:42:39 +0200 |
commit | 26eafeaab917dd228d292f362be1577c9b4b2e77 (patch) | |
tree | bd89e0ed1c11635d184c7b497aac6ddd967ebde8 /fs/btrfs/ioctl.c | |
parent | timekeeping: Provide NMI safe access to clock realtime (diff) | |
parent | Merge branch 'for-4.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/gi... (diff) | |
download | linux-26eafeaab917dd228d292f362be1577c9b4b2e77.tar.xz linux-26eafeaab917dd228d292f362be1577c9b4b2e77.zip |
Merge branch 'linus' into timers/core
Pick up upstream changes to get the prerequisites for the timer changes.
Diffstat (limited to 'fs/btrfs/ioctl.c')
-rw-r--r-- | fs/btrfs/ioctl.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index d6715c2bcdc4..6c7a49faf4e0 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c @@ -2773,9 +2773,9 @@ static long btrfs_ioctl_fs_info(struct btrfs_fs_info *fs_info, } mutex_unlock(&fs_devices->device_list_mutex); - fi_args->nodesize = fs_info->super_copy->nodesize; - fi_args->sectorsize = fs_info->super_copy->sectorsize; - fi_args->clone_alignment = fs_info->super_copy->sectorsize; + fi_args->nodesize = fs_info->nodesize; + fi_args->sectorsize = fs_info->sectorsize; + fi_args->clone_alignment = fs_info->sectorsize; if (copy_to_user(arg, fi_args, sizeof(*fi_args))) ret = -EFAULT; @@ -3032,7 +3032,7 @@ static int btrfs_cmp_data_prepare(struct inode *src, u64 loff, out: if (ret) btrfs_cmp_data_free(cmp); - return 0; + return ret; } static int btrfs_cmp_data(u64 len, struct cmp_pages *cmp) @@ -4061,6 +4061,10 @@ static long btrfs_ioctl_default_subvol(struct file *file, void __user *argp) ret = PTR_ERR(new_root); goto out; } + if (!is_fstree(new_root->objectid)) { + ret = -ENOENT; + goto out; + } path = btrfs_alloc_path(); if (!path) { |