mirror of
https://kernel.googlesource.com/pub/scm/linux/kernel/git/stable/linux-stable.git
synced 2025-09-14 11:19:08 +10:00
gfs2: move msleep to sleepable context
This patch moves the msleep_interruptible() out of the non-sleepable
context by moving the ls->ls_recover_spin spinlock around so
msleep_interruptible() will be called in a sleepable context.
Cc: stable@vger.kernel.org
Fixes: 4a7727725d
("GFS2: Fix recovery issues for spectators")
Suggested-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
This commit is contained in:
parent
9c32cda43e
commit
ac5ee087d3
@ -996,14 +996,15 @@ locks_done:
|
||||
if (sdp->sd_args.ar_spectator) {
|
||||
fs_info(sdp, "Recovery is required. Waiting for a "
|
||||
"non-spectator to mount.\n");
|
||||
spin_unlock(&ls->ls_recover_spin);
|
||||
msleep_interruptible(1000);
|
||||
} else {
|
||||
fs_info(sdp, "control_mount wait1 block %u start %u "
|
||||
"mount %u lvb %u flags %lx\n", block_gen,
|
||||
start_gen, mount_gen, lvb_gen,
|
||||
ls->ls_recover_flags);
|
||||
spin_unlock(&ls->ls_recover_spin);
|
||||
}
|
||||
spin_unlock(&ls->ls_recover_spin);
|
||||
goto restart;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user