]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - cmd_device.c
fix list_journal for nochanges
[bcachefs-tools-debian] / cmd_device.c
index 1cb31ab858422f7f5646aeb2ee7d3d7dd38f6c35..d4282f75290c40517818203c4a45af60db300f99 100644 (file)
@@ -324,15 +324,17 @@ int cmd_device_evacuate(int argc, char *argv[])
        int dev_idx;
        struct bchfs_handle fs = bchu_fs_open_by_dev(dev_path, &dev_idx);
 
-       struct bch_ioctl_dev_usage u = bchu_dev_usage(fs, dev_idx);
+       struct bch_ioctl_dev_usage_v2 *u = bchu_dev_usage(fs, dev_idx);
 
-       if (u.state == BCH_MEMBER_STATE_rw) {
+       if (u->state == BCH_MEMBER_STATE_rw) {
                printf("Setting %s readonly\n", dev_path);
                bchu_disk_set_state(fs, dev_idx, BCH_MEMBER_STATE_ro, 0);
        }
 
+       free(u);
+
        return bchu_data(fs, (struct bch_ioctl_data) {
-               .op             = BCH_DATA_OP_MIGRATE,
+               .op             = BCH_DATA_OP_migrate,
                .start_btree    = 0,
                .start_pos      = POS_MIN,
                .end_btree      = BTREE_ID_NR,
@@ -528,10 +530,9 @@ int cmd_device_resize(int argc, char *argv[])
                if (IS_ERR(c))
                        die("error opening %s: %s", dev, bch2_err_str(PTR_ERR(c)));
 
-               struct bch_dev *ca, *resize = NULL;
-               unsigned i;
+               struct bch_dev *resize = NULL;
 
-               for_each_online_member(ca, c, i) {
+               for_each_online_member(c, ca) {
                        if (resize)
                                die("confused: more than one online device?");
                        resize = ca;
@@ -626,10 +627,9 @@ int cmd_device_resize_journal(int argc, char *argv[])
                if (IS_ERR(c))
                        die("error opening %s: %s", dev, bch2_err_str(PTR_ERR(c)));
 
-               struct bch_dev *ca, *resize = NULL;
-               unsigned i;
+               struct bch_dev *resize = NULL;
 
-               for_each_online_member(ca, c, i) {
+               for_each_online_member(c, ca) {
                        if (resize)
                                die("confused: more than one online device?");
                        resize = ca;