On Thu, 30 Jan 2020, Gleb Smirnoff wrote:

On Thu, Jan 30, 2020 at 12:04:03PM +0000, Hans Petter Selasky wrote:
H> Author: hselasky
H> Date: Thu Jan 30 12:04:02 2020
H> New Revision: 357293
H> URL: https://svnweb.freebsd.org/changeset/base/357293
H>
H> Log:
H>   Widen EPOCH(9) usage in netisr.
H>
H>   Software interrupt handlers are allowed to sleep. In swi_net() there
H>   is a read lock behind NETISR_RLOCK() which in turn ends up calling
H>   msleep() which means the whole of swi_net() cannot be protected by an
H>   EPOCH(9) section. By default the NETISR_LOCKING feature is disabled.
H>
H>   This issue was introduced by r357004. This is a preparation step for
H>   replacing the functionality provided by r357004.
H>
H>   Found by:       kib@
H>   Sponsored by:   Mellanox Technologies

What?! NETISR_RLOCK() which in turn ends up calling msleep()? Can you please
explain this nonsense?

It does not look like NETISR_RLOCK is configured as sleepable so it just uses a mtx.

Jeff


--
Gleb Smirnoff

_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to