diff options
author | Martin Matuska <mm@FreeBSD.org> | 2023-08-10 07:59:39 +0000 |
---|---|---|
committer | Martin Matuska <mm@FreeBSD.org> | 2023-08-10 08:11:52 +0000 |
commit | 28d2e3b5dedf24938e5ec0806084941510621f13 (patch) | |
tree | 0f2883dd652f65f0c779d69c58489130cd8f25c2 /sys/contrib | |
parent | cd25b0f740f8c846562fd66e7380437eb898c875 (diff) | |
download | src-28d2e3b5dedf24938e5ec0806084941510621f13.tar.gz src-28d2e3b5dedf24938e5ec0806084941510621f13.zip |
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
Diffstat (limited to 'sys/contrib')
-rw-r--r-- | sys/contrib/openzfs/module/zfs/zil.c | 4 |
1 files changed, 0 insertions, 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) { /* |