Date: Thu, 30 Jan 2020 11:09:42 -1000 (HST) From: Jeff Roberson <jroberson@jroberson.net> To: Gleb Smirnoff <glebius@freebsd.org> Cc: Hans Petter Selasky <hselasky@freebsd.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r357293 - head/sys/net Message-ID: <alpine.BSF.2.21.9999.2001301107560.1198@desktop> In-Reply-To: <20200130205629.GK1268@FreeBSD.org> References: <202001301204.00UC43Rw022059@repo.freebsd.org> <20200130205629.GK1268@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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 >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.21.9999.2001301107560.1198>