summaryrefslogtreecommitdiffstats
path: root/fs/gfs2/util.c
diff options
context:
space:
mode:
authorBob Peterson <rpeterso@redhat.com>2019-05-22 09:21:21 -0500
committerBob Peterson <rpeterso@redhat.com>2020-02-27 07:53:17 -0600
commit33dbd1e41a1dd549eb19a29477119d4e29766210 (patch)
tree16feec8a70ce9c7a0a24bb317c0cd8bb19564de4 /fs/gfs2/util.c
parent601ef0d52e9617588fcff3df26953592f2eb44ac (diff)
downloadlinux-33dbd1e41a1dd549eb19a29477119d4e29766210.tar.bz2
gfs2: fix infinite loop when checking ail item count before go_inval
Before this patch, the rgrp_go_inval and inode_go_inval functions each checked if there were any items left on the ail count (by way of a count), and if so, did a withdraw. But the withdraw code now uses glocks when changing the file system to read-only status. So we can not have glock functions withdrawing or a hang will likely result: The glocks can't be serviced by the work_func if the work_func is busy doing its own withdraw. This patch removes the checks from the go_inval functions and adds a centralized check in do_xmote to warn about the problem and not withdraw, but flag the error so it's eventually caught when the logd daemon eventually runs. Signed-off-by: Bob Peterson <rpeterso@redhat.com> Reviewed-by: Andreas Gruenbacher <agruenba@redhat.com>
Diffstat (limited to 'fs/gfs2/util.c')
0 files changed, 0 insertions, 0 deletions