Skip site navigation (1)Skip section navigation (2)
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>