diff --git a/c_src/cmd_fsck.c b/c_src/cmd_fsck.c index 68d22fd4..580df0d5 100644 --- a/c_src/cmd_fsck.c +++ b/c_src/cmd_fsck.c @@ -227,6 +227,10 @@ int cmd_fsck(int argc, char *argv[]) darray_str devs = get_or_split_cmdline_devs(argc, argv); + darray_for_each(devs, i) + if (dev_mounted(*i)) + return fsck_online(*i); + int kernel_probed = kernel; if (kernel_probed < 0) kernel_probed = should_use_kernel_fsck(devs); @@ -259,10 +263,6 @@ userland_fsck: if (ret) return ret; - darray_for_each(devs, i) - if (dev_mounted(*i)) - return fsck_online(*i); - struct bch_fs *c = bch2_fs_open(devs.data, devs.nr, opts); if (IS_ERR(c)) exit(8);