Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Oct 2011 23:13:48 +0400
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Ermal Lu?i <eri@FreeBSD.org>
Cc:        nerijus.ambrazas@ktu.lt, bug-followup@FreeBSD.org, freebsd-pf@FreeBSD.org
Subject:   Re: kern/114095: [carp] carp+pf delay with high state limit
Message-ID:  <20111017191348.GG51949@glebius.int.ru>
In-Reply-To: <CAPBZQG0yrf969eqCuSKAqpxWZUXgOdYMVBHxq4cr2y7GT0E-xA@mail.gmail.com>
References:  <201110151420.p9FEKulv026435@freefall.freebsd.org> <CAPBZQG0BU3ARwC7XwKjk1qy-1PYETGuLNDkYk3S=XFrXh4VYEQ@mail.gmail.com> <20111017131742.GC51949@glebius.int.ru> <CAPBZQG0yrf969eqCuSKAqpxWZUXgOdYMVBHxq4cr2y7GT0E-xA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Oct 17, 2011 at 08:47:31PM +0200, Ermal Lu?i wrote:
E> > This is a surprise for me that this feature had been removed!
E> >
E> > It used to be in stable/6:
E> >
E> > http://fxr.watson.org/fxr/ident?v=FREEBSD60;i=carp_suppress_preempt
E> >
E> > And I always treated that variable in CARP as shared with pf. Why did
E> > they removed this feature from pfsync?
E> 
E> OpenBSD has it but FreeBSD is SMP capable and global vars without
E> synchronization do not work well.
E> To support that you have to add cross-dependencies and synchronization
E> between the two.
E> 
E> Not only synchronization though even some housekeeping around....
E> I will probably give a look at this again after 9.0.

Well, a possible race when pfsync clears its increment to
carp_suppress_preempt but the CPU where carp callout is running
doesn't notice it doesn't see it due to cache is harmless.
It just mean that preemption would happen not right after
pfsync has finished downloading states, but a couple of seconds
later.

-- 
Totus tuus, Glebius.



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