Transitioning if_addr_lock to an rwlock

Ermal Luçi eri at freebsd.org
Wed Dec 28 08:09:01 UTC 2011


2011/12/27 Gleb Smirnoff <glebius at freebsd.org>:
> On Tue, Dec 27, 2011 at 11:29:02AM +0100, Ermal Lu?i wrote:
> E> 2011/12/27 Gleb Smirnoff <glebius at freebsd.org>:
> E> > On Thu, Dec 22, 2011 at 11:30:01AM -0500, John Baldwin wrote:
> E> > J> You can find the patch for 8.x at
> E> > J> http://www.freebsd.org/~jhb/patches/if_addr_rwlock.patch
> E> >
> E> > Just my two pennies: for head/ patching if ip_carp.c should
> E> > be straightforward:
> E> >
> E> > 1) Using W in carp_alloc_if() and carp_free_if().
> E> > 2) Using R everywhere else.
> E> >
> E>
> E> I would not say that is true!
> E>
> E> Look at this https://github.com/bsdperimeter/pfsense-tools/blob/master/patches/RELENG_8_1/carp_livelock_fixes.diff
> E> I already did this for carp on pfSense for 8.x and should be the same for HEAD.
> E> That has undergone testing and catching up where R vs W.
>
> Ermal,
>
> in head/ we already got new CARP implementation.
>
Gleb,

yeah but the 'new' there is just the interface provided to be
configured and not the protocol or code perse.
To me it is the same from locking perspective in 8.x and HEAD

For sure i will have to come to this when we move to 9 or HEAD in
pfSense but still think its not that simple as you said.

Regards,
Ermal


More information about the freebsd-net mailing list