[ovs-dev] [PATCH 2/4] ofproto-dpif: Handle failed flow 'put's.

Justin Pettit jpettit at nicira.com
Thu Jun 20 23:57:24 UTC 2013


On Jun 20, 2013, at 4:31 PM, Ben Pfaff <blp at nicira.com> wrote:

> The other thing that worries me is that you mentioned that you saw
> multiple installations of a single subfacet in a single batch.  If so,
> that worries me because it seems like this could happen:
> 
>        handle_flow_miss_with_facet() queues up subfacet sf for
>        installation into fast path, and sets sf->path to
>        SF_FAST_PATH.
> 
>        handle_flow_miss_with_facet() queues up subfacet sf for
>        installation into fast path, again, and sets sf->path to
>        SF_FAST_PATH.
> 
> ...
> 
>        The first installation succeeds.  OK.
> 
>        The second installation fails (EINVAL, EEXIST, whatever), so
>        we set sf->path back to SF_NOT_INSTALLED.  But it was
>        installed by the first "put".
> 
> But I don't understand how we'd get multiple installations to begin
> with, since the first handle_flow_miss_with_facet() call would set
> sf->path to SF_FAST_PATH and the second one would see that sf->path
> was already SF_FAST_PATH and not try to install it again.  Do you have
> any idea what was going on there?

I think that was just a problem I saw when I was using the xout cache to generate megaflows in userspace.  I agree it shouldn't be a problem with the new method we're using.

--Justin





More information about the dev mailing list