From: Liu Bo Date: Thu, 10 May 2012 10:10:38 +0000 (+0800) Subject: Btrfs: fix wrong error returned by adding a device X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=f8c5d0b443ff87c43ba690fa2b5bd2c9387d8624;p=openwrt%2Fstaging%2Fblogic.git Btrfs: fix wrong error returned by adding a device Reproduce: $ mkfs.btrfs /dev/sdb7 $ mount /dev/sdb7 /mnt/btrfs -o ro $ btrfs dev add /dev/sdb8 /mnt/btrfs ERROR: error adding the device '/dev/sdb8' - Invalid argument Since we mount with readonly options, and /dev/sdb7 is not a seeding one, a readonly notification is preferred. Signed-off-by: Liu Bo Reviewed-by: Josef Bacik --- diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 1411b99555a4..48a06d1fc067 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -1633,7 +1633,7 @@ int btrfs_init_new_device(struct btrfs_root *root, char *device_path) int ret = 0; if ((sb->s_flags & MS_RDONLY) && !root->fs_info->fs_devices->seeding) - return -EINVAL; + return -EROFS; bdev = blkdev_get_by_path(device_path, FMODE_WRITE | FMODE_EXCL, root->fs_info->bdev_holder);