Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Jul 2007 15:34:33 +0100
From:      "Bruce M. Simpson" <bms@FreeBSD.org>
To:        Robert Watson <rwatson@FreeBSD.org>
Cc:        Ian FREISLICH <ianf@clue.co.za>, freebsd-current@freebsd.org, bu7cher@yandex.ru
Subject:   Re: Panic in ipfw
Message-ID:  <468A5E79.10407@FreeBSD.org>
In-Reply-To: <20070703143617.D29272@fledge.watson.org>
References:  <E1I5i5Z-0006fa-VE@clue.co.za> <20070703143617.D29272@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Robert Watson wrote:
>
> My hope is that these will be addressed in FreeBSD 8.x, especially 
> with the upcoming read-mostly locks, which will have almost zero cost 
> to acquire for read protection, exactly what we'd like to see for 
> these code paths. Some of these changes may be mergeable to the 7.x 
> branch, but will need lots of time to "burn in", as the risks of such 
> changes are non-trivial. I did some initial work to properly lock down 
> the ifaddr address lists for netinet, and found they required moderate 
> rearrangement of the address management ioctl paths, which are pretty 
> complex without being rerranged :-).

How do you feel about taking protocol domain addresses out of struct 
ifnet altogether?

Logically they belong with other protocol domain state, and this would 
likely eliminate another swathe of locking and general ordering issues, 
although it would come at the cost of ABI compatibility and a change in 
userland tools.

Right now there is no way of purging protocol domain state e.g. for IPv6 
without taking an interface out of the system completely. This is not 
possible for onboard hardware unless the underlying driver is built as a 
module.

Regards,
BMS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?468A5E79.10407>