Date: Fri, 22 Sep 2017 12:25:12 +0000 From: "rwatson (Robert Watson)" <phabric-noreply@FreeBSD.org> To: freebsd-net@freebsd.org Subject: [Differential] D12457: Complete INADDR_HASH lock protection Message-ID: <06e352e15e3eb0f9fe8bfb6cdd65d13f@localhost.localdomain> In-Reply-To: <differential-rev-PHID-DREV-em3ftishzefmzreicm43-req@FreeBSD.org> References: <differential-rev-PHID-DREV-em3ftishzefmzreicm43-req@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
rwatson added a subscriber: bz. rwatson added a comment. Many of these changes are not sufficient to address the underlying problems in this code, as the lock covers loop iteration but fails to protect the stability of the 'ifp' or 'ia' pointer outside of the loop. It could be that this prevents the crash you are seeing as the issue is iteration over entries being deleted from the list, or that the problem you are seeing is masked by changes in timing (as it involves using an ifp, ia, etc, being removed). It would be useful to think a little harder about our goals here. @bz and I have been pondering for some time a somewhat coarser, rmlock-based synchronisation approach to use in these circumstances, but have not prototyped this yet. REPOSITORY rS FreeBSD src repository REVISION DETAIL https://reviews.freebsd.org/D12457 EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: eugen_grosbein.net, ae, avg, mav, rwatson Cc: bz, imp, freebsd-net-list
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?06e352e15e3eb0f9fe8bfb6cdd65d13f>
