[ovs-dev] [PATCH] ovn-controller: Fix table 33 flows for containers.
Gurucharan Shetty
shettyg at nicira.com
Mon Sep 28 19:31:08 UTC 2015
I will send a v2.
On Mon, Sep 28, 2015 at 12:28 PM, Gurucharan Shetty <shettyg at nicira.com> wrote:
>> From first read of the patch, it looks like this doesn't change
>> anything. The above code still seems to provide the same result. The
>> important part is actually in code not changed. There is code later
>> that uses whether or not the port is in lport_to_ofport to determine if
>> it's local or not.
>
> Right. I took the approach to prevent future bugs that may add code based on
> the name 'lport_to_ofport' which can indicate that the simap has all
> the lport to ofport mappings. Instead it only has local vm backed
> logical ports.
>
> So presumably, I can simply change the name to 'vif_to_ofport'.
>
>
>>
>>> if (simap_contains(&lport_to_ofport, port->logical_port)) {
>>> put_load(port->tunnel_key, MFF_LOG_OUTPORT, 0, 32, &ofpacts);
>>> put_resubmit(OFTABLE_DROP_LOOPBACK, &ofpacts);
>>
>> I think I'd actually prefer just fixing that code to handle the
>> parent_port case. It prevents having to add another full iteration of
>> port bindings, which could have many thousands of entries.
>>
>> I think this would fix it, but I haven't tested it.
>
> Yes, it should fix it. I am fine with either approach.
>
>>
>>
>>> diff --git a/ovn/controller/physical.c b/ovn/controller/physical.c
>>> index bdb02da..5cc700e 100644
>>> --- a/ovn/controller/physical.c
>>> +++ b/ovn/controller/physical.c
>>> @@ -471,7 +471,8 @@ physical_run(struct controller_ctx *ctx, enum mf_field_id mff_ovn_geneve,
>>> continue;
>>> }
>>>
>>> - if (simap_contains(&lport_to_ofport, port->logical_port)) {
>>> + if (simap_contains(&lport_to_ofport,
>>> + port->parent_port ? port->parent_port : port->logical_port)) {
>>> put_load(port->tunnel_key, MFF_LOG_OUTPORT, 0, 32, &ofpacts);
>>> put_resubmit(OFTABLE_DROP_LOOPBACK, &ofpacts);
>>> } else if (port->chassis) {
>>
>> --
>> Russell Bryant
More information about the dev
mailing list