git: b6f4a3fa75d2 - main - mqueuefs: uma_zfree() can be postponed until mqfs sx mi_lock is dropped

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Wed, 22 May 2024 22:13:44 UTC
The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=b6f4a3fa75d24637b4d81035655fcb3d3ea187ad

commit b6f4a3fa75d24637b4d81035655fcb3d3ea187ad
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-05-22 01:46:28 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-05-22 22:13:29 +0000

    mqueuefs: uma_zfree() can be postponed until mqfs sx mi_lock is dropped
    
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
---
 sys/kern/uipc_mqueue.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c
index d842aff8fdc9..6f8fbaacdfb4 100644
--- a/sys/kern/uipc_mqueue.c
+++ b/sys/kern/uipc_mqueue.c
@@ -1109,9 +1109,9 @@ mqfs_reclaim(struct vop_reclaim_args *ap)
 	sx_xlock(&mqfs->mi_lock);
 	vp->v_data = NULL;
 	LIST_REMOVE(vd, mv_link);
-	uma_zfree(mvdata_zone, vd);
 	mqnode_release(pn);
 	sx_xunlock(&mqfs->mi_lock);
+	uma_zfree(mvdata_zone, vd);
 	return (0);
 }