gfs2: bypass log flush if the journal is not live
authorBob Peterson <rpeterso@redhat.com>
Fri, 12 Mar 2021 13:47:47 +0000 (08:47 -0500)
committerAndreas Gruenbacher <agruenba@redhat.com>
Fri, 12 Mar 2021 14:52:48 +0000 (15:52 +0100)
commit0efc4976e3da40b09c592b21f722022d8f12a16b
tree40f0bc6e3f5a69f345a2688fba1df0788df6ff6e
parentd5bf630f355d8c532bef2347cf90e8ae60a5f1bd
gfs2: bypass log flush if the journal is not live

Patch fe3e397668775 ("gfs2: Rework the log space allocation logic")
changed gfs2_log_flush to reserve a set of journal blocks in case no
transaction is active.  However, gfs2_log_flush also gets called in
cases where we don't have an active journal, for example, for spectator
mounts.  In that case, trying to reserve blocks would sleep forever, but
we want gfs2_log_flush to be a no-op instead.

Fixes: fe3e397668775 ("gfs2: Rework the log space allocation logic")
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
fs/gfs2/log.c