[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