The branch stable/13 has been updated by kp:

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

commit 1c465e52920848dec6a76f0672fa209db7d5e5b5
Author:     Kristof Provost <k...@freebsd.org>
AuthorDate: 2025-01-20 13:24:48 +0000
Commit:     Kristof Provost <k...@freebsd.org>
CommitDate: 2025-01-27 09:04:31 +0000

    netinet: enter epoch in garp_rexmit()
    
    garp_rexmit() is a callback, so is not in net_epoch, which
    arprequest_internal() expects.
    Enter and exit the net_epoch.
    
    PR:             284073
    MFC after:      1 week
    Sponsored by:   Rubicon Communications, LLC ("Netgate")
    
    (cherry picked from commit 38fdcca05d09b4d5426a253d3c484f9481a73ac2)
---
 sys/netinet/if_ether.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c
index ac3dbfaa4a65..e0cb3031f546 100644
--- a/sys/netinet/if_ether.c
+++ b/sys/netinet/if_ether.c
@@ -1361,6 +1361,7 @@ sysctl_garp_rexmit(SYSCTL_HANDLER_ARGS)
 static void
 garp_rexmit(void *arg)
 {
+       struct epoch_tracker et;
        struct in_ifaddr *ia = arg;
 
        if (callout_pending(&ia->ia_garp_timer) ||
@@ -1370,6 +1371,7 @@ garp_rexmit(void *arg)
                return;
        }
 
+       NET_EPOCH_ENTER(et);
        CURVNET_SET(ia->ia_ifa.ifa_ifp->if_vnet);
 
        /*
@@ -1401,6 +1403,7 @@ garp_rexmit(void *arg)
        }
 
        CURVNET_RESTORE();
+       NET_EPOCH_EXIT(et);
 }
 
 /*

Reply via email to