On 12 July 2014 00:55, Thomas Graf <tg...@noironetworks.com> wrote:

> > Another sidenote:
>
 > > Looking at the code, OVS does not handle NLM_F_DUMP_INTR in user space
> yet
> > > and the kernel dump does not call genl_dump_check_consistent() yet to
> > > provide
> > > the flag. So what can currently happen even without your patch is that
> if
> > > the dump requires more than one Netlink message, the RCU critical
> section
> > > is left and thus a list deletion or insertion of a flow may occur in
> the
> > > middle of the dump and thus provide a slightly incorrect set of flows.
> > >
> >
> > Yes, I believe this is done deliberately for performance reasons. OVS
> > userspace doesn't assume that it's getting a consistent snapshot of the
> > flow table, it handles cases where flows are duplicated or missing in the
> > dump. An idea has been floated to keep track of flow adds/deletes in the
> > kernel to counteract this, but I got distracted by this idea first :-)
>
> Yes. Other code paths do the same thing. Which is why the
> dump-interrupted flag has been introduced to ease detection on the
> receiver side.
>

I see, thanks for pointing this out. I guess that there are some cases that
could benefit from this.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to