Skip to content
Commit 7de3c8b4 authored by Kent Overstreet's avatar Kent Overstreet
Browse files

bcachefs: Don't schedule non persistent passes persistently



  if (!(in_recovery && (flags & RUN_RECOVERY_PASS_nopersistent)))

should have been

  if (!in_recovery && !(flags & RUN_RECOVERY_PASS_nopersistent)))

But the !in_recovery part was also wrong: the assumption is that if
we're in recovery we'll just rewind and run the recovery pass
immediately, but we're not able to do so if we've already gone RW and
the pass must be run before we go RW. In that case, we need to schedule
it in the superblock so it can be run on the next mount attempt.

Scheduling it persistently is fine, because it'll be cleared in the
superblock immediately when the pass completes successfully.

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 63a83463
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment