From 97d55ad49d3986e1cbcf0e8d62b9415707275a0f Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Mon, 17 Apr 2023 21:51:29 -0400 Subject: [PATCH] freebsd_network: Add missing LOCKGIANT to the close() hook. Should fix #18363. --- src/libs/compat/freebsd_network/device_hooks.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/libs/compat/freebsd_network/device_hooks.c b/src/libs/compat/freebsd_network/device_hooks.c index e8c05cc85a..422fa0537b 100644 --- a/src/libs/compat/freebsd_network/device_hooks.c +++ b/src/libs/compat/freebsd_network/device_hooks.c @@ -84,6 +84,7 @@ compat_close(void *cookie) struct ifnet *ifp = cookie; if_printf(ifp, "compat_close()\n"); + IFF_LOCKGIANT(ifp); atomic_or(&ifp->flags, DEVICE_CLOSED); @@ -91,6 +92,7 @@ compat_close(void *cookie) release_sem_etc(ifp->receive_sem, 1, B_RELEASE_ALL); + IFF_UNLOCKGIANT(ifp); return B_OK; }