]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/chardev.c
Update bcachefs sources to 44ac32df8e0c bcachefs: Split brain detection
[bcachefs-tools-debian] / libbcachefs / chardev.c
index 08922f7e380a9920fc1377ee1fd1e53dcaadb058..22a52bc8406bb7a1828f54ba9defa303d47a698f 100644 (file)
@@ -360,7 +360,8 @@ static long bch2_ioctl_fsck_offline(struct bch_ioctl_fsck_offline __user *user_a
        init_waitqueue_head(&thr->output.wait);
        darray_init(&thr->output2);
 
-       if (copy_from_user(devs, &user_arg->devs[0], sizeof(user_arg->devs[0]) * arg.nr_devs)) {
+       if (copy_from_user(devs, &user_arg->devs[0],
+                          array_size(sizeof(user_arg->devs[0]), arg.nr_devs))) {
                ret = -EINVAL;
                goto err;
        }
@@ -865,8 +866,6 @@ static long bch2_ioctl_disk_get_idx(struct bch_fs *c,
                                    struct bch_ioctl_disk_get_idx arg)
 {
        dev_t dev = huge_decode_dev(arg.dev);
-       struct bch_dev *ca;
-       unsigned i;
 
        if (!capable(CAP_SYS_ADMIN))
                return -EPERM;
@@ -874,10 +873,10 @@ static long bch2_ioctl_disk_get_idx(struct bch_fs *c,
        if (!dev)
                return -EINVAL;
 
-       for_each_online_member(ca, c, i)
+       for_each_online_member(c, ca)
                if (ca->dev == dev) {
                        percpu_ref_put(&ca->io_ref);
-                       return i;
+                       return ca->dev_idx;
                }
 
        return -BCH_ERR_ENOENT_dev_idx_not_found;