[ovs-dev] [threaded reval 2/2] ofproto: Handle flow installation and eviction in upcall.
Ben Pfaff
blp at nicira.com
Tue Dec 17 18:02:35 UTC 2013
On Tue, Dec 17, 2013 at 08:48:15AM -0800, Joe Stringer wrote:
> On 15 December 2013 17:57, Ethan Jackson <ethan at nicira.com> wrote:
> > + if (!revalidator->n_udumps) {
> > + if (revalidator->dump_seq != seq_read(udpif->dump_seq)) {
> > + revalidator->dump_seq = seq_read(udpif->dump_seq);
> > + revalidator_sweep(revalidator);
> > + } else {
> > + ovs_mutex_cond_wait(&revalidator->wake_cond,
> > + &revalidator->mutex);
> > + }
>
> I didn't review the whole patch, but I did notice this earlier:-
> Couldn't udpif->dump_seq change between the two seq_read() calls? The
> example seq usage in seq.h reads the seq once and uses that variable
> to compare and update. This should ensure that we handle all changes
> to dump_seq.
I think it's OK here if the seq value changes between the two reads.
The goal, as I understand it, is just to make sure that
revalidator_sweep() runs after the most recent change to the seq, and I
think that this code will accomplish that.
More information about the dev
mailing list