ng_iface: don't recursively enter epoch in the rcvdata method

Reviewed by:		p.mousavizadeh_protonmail.com, zlei
Differential Revision:	https://reviews.freebsd.org/D54241
This commit is contained in:
Gleb Smirnoff 2025-12-17 14:05:53 -08:00
parent 4d185f5457
commit 104827151e

View file

@ -680,7 +680,6 @@ ng_iface_rcvdata(hook_p hook, item_p item)
const priv_p priv = NG_NODE_PRIVATE(NG_HOOK_NODE(hook));
const iffam_p iffam = get_iffam_from_hook(priv, hook);
struct ifnet *const ifp = priv->ifp;
struct epoch_tracker et;
struct mbuf *m;
int isr;
@ -723,9 +722,7 @@ ng_iface_rcvdata(hook_p hook, item_p item)
random_harvest_queue(m, sizeof(*m), RANDOM_NET_NG);
M_SETFIB(m, ifp->if_fib);
CURVNET_SET(ifp->if_vnet);
NET_EPOCH_ENTER(et);
netisr_dispatch(isr, m);
NET_EPOCH_EXIT(et);
CURVNET_RESTORE();
return (0);
}