Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Feb 2020 13:59:49 +0000
From:      bugzilla-noreply@freebsd.org
To:        net@FreeBSD.org
Subject:   [Bug 244241] ng_eiface: panic: epoch_wait_preempt() called in the middle of an epoch section of the same epoch
Message-ID:  <bug-244241-7501-5R8q1hXROM@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-244241-7501@https.bugs.freebsd.org/bugzilla/>
References:  <bug-244241-7501@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D244241

--- Comment #2 from Aleksandr Fedorov <aleksandr.fedorov@itglobal.com> ---
Yes, it seems that netgraph needs some love.

In this case, the function ngc_send() entering to the epoch. So, this is the
control path, not data. Data path enter to the epoch from ngthread(),
ng_callout_trampoline() and if node really need it:
http://bxr.su/FreeBSD/sys/netgraph/ng_base.c#3423
http://bxr.su/FreeBSD/sys/netgraph/ng_base.c#3778
http://bxr.su/FreeBSD/sys/netgraph/ng_device.c#475

After a quick research
(http://bxr.su/search?q=3DNET_EPOCH_ENTER&defs=3D&refs=3D&path=3Dsys%2Fnetg=
raph&project=3DFreeBSD):

1. http://bxr.su/FreeBSD/sys/netgraph/ng_ip_input.c#131 - already in epoch.
2. http://bxr.su/FreeBSD/sys/netgraph/ng_ether.c#601 - already in epoch.
3. http://bxr.su/FreeBSD/sys/netgraph/ng_ether.c#743 - already in epoch.
4. http://bxr.su/FreeBSD/sys/netgraph/ng_eiface.c#517 - already in epoch.
5. http://bxr.su/FreeBSD/sys/netgraph/ng_iface.c#735 - already in epoch.

Do we really need to entering the epoch from control path?
http://bxr.su/FreeBSD/sys/netgraph/ng_socket.c#341

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-244241-7501-5R8q1hXROM>