Commit 05801b65 authored by Kent Overstreet's avatar Kent Overstreet
Browse files

bcachefs: Disable errors=panic for BCH_IOCTL_FSCK_OFFLINE



BCH_IOCTL_FSCK_OFFLINE allows the userspace fsck tool to use the kernel
implementation of fsck - primarily when the kernel version is a better
version match.

It should look and act exactly like the normal userspace fsck that the
user expected to be invoking, so errors should never result in a kernel
panic.

We may want to consider further restricting errors=panic - it's only
intended for debugging in controlled test environments, it should have
no purpose it normal usage.

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 374b3d38
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -234,6 +234,10 @@ static long bch2_ioctl_fsck_offline(struct bch_ioctl_fsck_offline __user *user_a

	thr->c = bch2_fs_open(devs.data, arg.nr_devs, thr->opts);

	if (!IS_ERR(thr->c) &&
	    thr->c->opts.errors == BCH_ON_ERROR_panic)
		thr->c->opts.errors = BCH_ON_ERROR_ro;

	ret = bch2_run_thread_with_stdio(&thr->thr, &bch2_offline_fsck_ops);
out:
	darray_for_each(devs, i)