From 28d2e3b5dedf24938e5ec0806084941510621f13 Mon Sep 17 00:00:00 2001 From: Martin Matuska Date: Thu, 10 Aug 2023 09:59:39 +0200 Subject: [PATCH] zfs: cherry-pick fix from openzfs Vendor PR: #15103 Remove zl_issuer_lock from zil_suspend() Obtained from: OpenZFS OpenZFS commit: 2848de11e516a2ef2e6baa574a60d77a6fb47023 Note: full vendor imports will continue when stable/14 has been branched --- sys/contrib/openzfs/module/zfs/zil.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/sys/contrib/openzfs/module/zfs/zil.c b/sys/contrib/openzfs/module/zfs/zil.c index af7137faaccf..be5b9edf6ede 100644 --- a/sys/contrib/openzfs/module/zfs/zil.c +++ b/sys/contrib/openzfs/module/zfs/zil.c @@ -3941,13 +3941,11 @@ zil_suspend(const char *osname, void **cookiep) return (error); zilog = dmu_objset_zil(os); - mutex_enter(&zilog->zl_issuer_lock); mutex_enter(&zilog->zl_lock); zh = zilog->zl_header; if (zh->zh_flags & ZIL_REPLAY_NEEDED) { /* unplayed log */ mutex_exit(&zilog->zl_lock); - mutex_exit(&zilog->zl_issuer_lock); dmu_objset_rele(os, suspend_tag); return (SET_ERROR(EBUSY)); } @@ -3961,7 +3959,6 @@ zil_suspend(const char *osname, void **cookiep) if (cookiep == NULL && !zilog->zl_suspending && (zilog->zl_suspend > 0 || BP_IS_HOLE(&zh->zh_log))) { mutex_exit(&zilog->zl_lock); - mutex_exit(&zilog->zl_issuer_lock); dmu_objset_rele(os, suspend_tag); return (0); } @@ -3970,7 +3967,6 @@ zil_suspend(const char *osname, void **cookiep) dsl_pool_rele(dmu_objset_pool(os), suspend_tag); zilog->zl_suspend++; - mutex_exit(&zilog->zl_issuer_lock); if (zilog->zl_suspend > 1) { /*