]> git.baikalelectronics.ru Git - kernel.git/commit
gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only
authorBob Peterson <rpeterso@redhat.com>
Thu, 3 Dec 2020 13:51:41 +0000 (08:51 -0500)
committerAndreas Gruenbacher <agruenba@redhat.com>
Thu, 3 Dec 2020 16:04:41 +0000 (17:04 +0100)
commit6a3c39ff5477308f209a005c7f3c31b607dcaaa6
tree9d6140f0271efcc338ed9ac3fce53831d765e927
parent083733f1908e2f3651c9952b34b68248b4064b8e
gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only

Function signal_our_withdraw needs to work on file systems that have been
partially frozen. To do this, it called flush_workqueue(gfs2_freeze_wq).
This this wrong because it waits for *ALL* file systems to be unfrozen, not
just the one we're withdrawing from. It should only wait for the targetted
file system to be unfrozen. Otherwise it would wait until ALL file systems
are thawed before signaling the withdraw.

This patch changes signal_our_withdraw so it calls flush_work() for the target
file system's freeze work (only) to be completed.

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
fs/gfs2/util.c