From d4576f5a5732caacc360193b5aac4124e792105c Mon Sep 17 00:00:00 2001 From: xuchenchen Date: Tue, 18 Nov 2025 10:13:18 +0800 Subject: [PATCH] xfs_repair: clean up lock resources --- 0014-clean-up-lock-resources.patch | 39 ++++++++++++++++++++++++++++++ xfsprogs.spec | 6 ++++- 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 0014-clean-up-lock-resources.patch diff --git a/0014-clean-up-lock-resources.patch b/0014-clean-up-lock-resources.patch new file mode 100644 index 0000000..f80251c --- /dev/null +++ b/0014-clean-up-lock-resources.patch @@ -0,0 +1,39 @@ +From 0b1e67af12a15db5669c355d82eceb93704b40cd Mon Sep 17 00:00:00 2001 +From: "Darrick J. Wong" +Date: Mon, 15 Apr 2024 16:07:50 -0700 +Subject: xfs_repair: clean up lock resources + +When we free all the incore block mapping data, be sure to free the +locks too. + +Signed-off-by: Darrick J. Wong +Reviewed-by: Christoph Hellwig +--- + repair/incore.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/repair/incore.c b/repair/incore.c +index 2ed37a105c..06edaf0d60 100644 +--- a/repair/incore.c ++++ b/repair/incore.c +@@ -301,8 +301,17 @@ free_bmaps(xfs_mount_t *mp) + { + xfs_agnumber_t i; + ++ pthread_mutex_destroy(&rt_lock.lock); ++ ++ for (i = 0; i < mp->m_sb.sb_agcount; i++) ++ pthread_mutex_destroy(&ag_locks[i].lock); ++ ++ free(ag_locks); ++ ag_locks = NULL; ++ + for (i = 0; i < mp->m_sb.sb_agcount; i++) + btree_destroy(ag_bmap[i]); ++ + free(ag_bmap); + ag_bmap = NULL; + +-- +cgit 1.2.3-korg + diff --git a/xfsprogs.spec b/xfsprogs.spec index e65fd16..396df38 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -1,6 +1,6 @@ Name: xfsprogs Version: 6.6.0 -Release: 14 +Release: 15 Summary: Administration and debugging tools for the XFS file system License: GPL-1.0-or-later AND LGPL-2.1-or-later URL: https://xfs.wiki.kernel.org @@ -32,6 +32,7 @@ Patch10: 0010-misc-fix-reversed-calloc-arguments.patch Patch11: 0011-mkfs-fix-the-issue-of-maxpct-set-to-0-not-taking-eff.patch Patch12: 0012-xfs_repair-don-t-leak-the-rootdir-inode-when-orphana.patch Patch13: 0013-xfs_repair-fix-stupid-argument-error-in-verify_inode.patch +Patch14: 0014-clean-up-lock-resources.patch %description xfsprogs are the userspace utilities that manage XFS filesystems. @@ -104,6 +105,9 @@ rm -rf %{buildroot}%{_datadir}/doc/xfsprogs/ %exclude %{_mandir}/man8/xfs_scrub* %changelog +* Tue Nov 18 2025 xuchenchen - 6.6.0-15 +- xfs_repair: clean up lock resources + * Wed Nov 12 2025 liuh - 6.6.0-14 - xfs_repair: fix stupid argument error in verify_inode_chunk -- Gitee