[Cluster-devel] [PATCH v2 0/3] gfs2: Misc withdraw patches

Bob Peterson rpeterso at redhat.com
Tue Aug 2 17:58:08 UTC 2022


This is version 2 which simplifies patch 1 and clarifies the comments of
patch 2 as per Andreas Gruenbacher's suggestions.

This patch set fixes a few bugs in how gfs2 handles file systems after
withdraw. In an ideal world, after a file system is withdrawn, users
should be able to unmount the file system without problems. However, we
discovered three problems that prevented clean unmounts:

1. A duplicate iput of the journal after attempted recovery caused
   kernel panics after withdraw.
2. After withdraw, unmount would hang for its alloted timeout period
   when glocks had waiters queued that, due to the withdraw, could
   never be granted.
3. Unmount would similarly hang when the withdraw prevented an outgoing
   request to dlm, but so the glock was never unlocked.

Bob Peterson (3):
  gfs2: Prevent double iput for journal on error
  gfs2: Dequeue waiters when withdrawn
  gfs2: Clear GLF_LOCK when withdraw prevents xmote

 fs/gfs2/glock.c | 33 ++++++++++++++++++++++++++++++++-
 fs/gfs2/glock.h |  1 +
 fs/gfs2/util.c  |  6 ++++++
 3 files changed, 39 insertions(+), 1 deletion(-)

-- 
2.36.1



More information about the Cluster-devel mailing list