svn commit: r357293 - head/sys/net

Hans Petter Selasky hps at selasky.org
Thu Jan 30 21:12:18 UTC 2020


On 2020-01-30 21:56, 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?
> 

See rms_rlock_fallback() in kern_rmlock.c .

--HPS


More information about the svn-src-head mailing list