diff options
author | Bob Peterson <rpeterso@redhat.com> | 2021-05-18 09:12:10 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-06-10 13:39:25 +0200 |
commit | d11e5b96efde861e6c753c15e694f3ee34e7a513 (patch) | |
tree | 41fc53493a6a807a0401ff417ac43d43bbf57b02 /sound | |
parent | 127f25be2ff0fb3706adf4cf91a0e18c43b59885 (diff) | |
download | linux-stable-d11e5b96efde861e6c753c15e694f3ee34e7a513.tar.gz linux-stable-d11e5b96efde861e6c753c15e694f3ee34e7a513.tar.bz2 linux-stable-d11e5b96efde861e6c753c15e694f3ee34e7a513.zip |
gfs2: fix scheduling while atomic bug in glocks
commit 20265d9a67e40eafd39a8884658ca2e36f05985d upstream.
Before this patch, in the unlikely event that gfs2_glock_dq encountered
a withdraw, it would do a wait_on_bit to wait for its journal to be
recovered, but it never released the glock's spin_lock, which caused a
scheduling-while-atomic error.
This patch unlocks the lockref spin_lock before waiting for recovery.
Fixes: 601ef0d52e96 ("gfs2: Force withdraw to replay journals and wait for it to finish")
Cc: stable@vger.kernel.org # v5.7+
Reported-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
0 files changed, 0 insertions, 0 deletions