On 3 Oct 2022, at 10:00, Ales Musil wrote:

<SNIP>

>>>>> -dp_clone_done:
>>>>> -    /* The clone's conntrack execution should have no effect on the
>>>> original
>>>>> -     * packet. */
>>>>> -    ctx->conntracked = old_conntracked;
>>>>> +    /* Let's run the actions as if they are reversible, if we find out
>>>> that
>>>>> +     * there was any irreversible action we can restore the xlate_ctx
>>>> and run
>>>>> +     * the do_clone instead. If the action is last we don't have to
>>>> check and
>>>>> +     * can just proceed with the actions. */
>>>>
>>>> Any stats to suggest that this is the best approach? I’m wondering if
>> this
>>>> is the common case, or if the real clone is more common. If it's the
>>>> latter, we might want to swap the order.
>>>>
>>>> Maybe you can do some tests with OVN and add two coverage counters, one
>>>> for total invocation of this function and one for real clones, and see
>> the
>>>> results while running through a real-user OVN use case?
>>>>
>>>
>>> I will try to come up with some OVN tests that might give a better
>>> perspective which is more common. For start I'll run the counters over
>> our
>>> tests in OVN.
>>
>> Thanks!
>>
>>
> Hi,
>
> I got the counters from OVN tests, it should represent some pieces of
> normal workflows.
>
> On average the actual clone is happening in 0.229%. Which suggests that the
> order is correct.
>
> The raw data are available at https://pastebin.mozilla.org/VqKTaO2e for 21
> days. First number are calls to clone_xlate_actions
> second number is how much of those were actual clones.

Thanks for running these tests! Verify interesting numbers, I was surprised by 
the low number of actual clones needed.

//Eelco

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to