[ovs-dev] [patch v4] conntrack: Add rcu support.

Darrell Ball dball at vmware.com
Fri Sep 28 18:05:08 UTC 2018



On 9/28/18, 5:03 AM, "Aaron Conole" <aconole at redhat.com> wrote:

    Darrell Ball <dball at vmware.com> writes:
    
    > Below is the recent private commit message I have for the patch:
    >
    > However, I plan to split out to 3 main patches, with probably a few minor
    > cosmetic patches.
    >
    > 1/ cmap performance and code simplification.
    > 2/ Eliminating exporting private datastructures to outside modules
    > 3/ Eliminating passing 'ct' structure as function parameter to most functions
    >
    > Thanks Darrell
    
    How different is the 3-patch series?  Is the end result identical to
    this patch?  Just wondering whether it's worthwhile to even do any
    performance testing with this patch or if it's better to wait for the
    3-patch series?

The initial 3-patch (+ some cosmetic patches) series will be similar Aaron.
However, it is always good to have others check it out.

Thanks Darrell




    
    >     conntrack: Add rcu support.
    >     
    >     Add in rcu support for conntrack. At the same time, the array of
    >     hmaps is replaced by a cmap.  Using a single map also simplifies
    >     the handling of nat and allows the removal of the nat_conn map.
    >     Hence, there is a net code reduction.
    >     
    >     The main reason for adding rcu is performance considerations with
    >     multiple threads.
    >     
    >     I'll probably split out into several patches later, as other changes
    >     were made at the same time. These include: getting rid of the private
    >     conntrack structure exported outside of conntrack; these fields are
    >     made static to conntrack now. Also there is less parameter passing,
    >     since some private variables like hash_basis, which is written once at
    >     init time is now referenced as a static variable rather then passed
    >     through to many functions.
    >     
    >     Signed-off-by: Darrell Ball <dlu998 at gmail.com>
    >
    >
    >
    >
    >
    >
    >
    > On 9/27/18, 11:10 AM, "ovs-dev-bounces at openvswitch.org on behalf of
    > Ben Pfaff" <ovs-dev-bounces at openvswitch.org on behalf of blp at ovn.org>
    > wrote:
    >
    >     On Tue, Sep 18, 2018 at 01:22:50PM -0700, Darrell Ball wrote:
    >     > Add in rcu support for conntrack. At the same time, the array of
    >     > hmaps is replaced by a cmap.  Using a single map also simplifies
    >     > the handling of nat and allows the removal of the nat_conn map.
    >     > There is still some cleanup to do and a few things to check. I'll
    >     > probably split out into several patches later, as some cosmetic
    >     > changes were made at the same time, like getting rid of the
    >     > private conntrack structure contents exported outside of conntrack;
    >     > these fields are made static to conntrack now.
    >     > 
    >     > Signed-off-by: Darrell Ball <dlu998 at gmail.com>
    >     
    >     Hi Darrell, thanks for the patch.
    >     
    >     Can you add a sentence or two to the commit message, please, explaining
    >     the motivation or the goal for the patch?  It's not clear to me whether
    >     this is a performance optimization, or a cleanup, or a fix for a race,
    >     etc.  This information helps review the patch and it also helps people
    >     looking through the history tracking down a bug etc.
    >     _______________________________________________
    >     dev mailing list
    >     dev at openvswitch.org
    >     https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.openvswitch.org%2Fmailman%2Flistinfo%2Fovs-dev&amp;data=02%7C01%7Cdball%40vmware.com%7C6b69d51051834f5f1f3408d6253a511e%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636737329807027518&amp;sdata=CfptLPWp9wPzHk3T7BX1p5G5X7ioMStevV1OnE2%2FsTM%3D&amp;reserved=0
    >     
    >
    > _______________________________________________
    > dev mailing list
    > dev at openvswitch.org
    > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail.openvswitch.org%2Fmailman%2Flistinfo%2Fovs-dev&amp;data=02%7C01%7Cdball%40vmware.com%7C6b69d51051834f5f1f3408d6253a511e%7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636737329807027518&amp;sdata=CfptLPWp9wPzHk3T7BX1p5G5X7ioMStevV1OnE2%2FsTM%3D&amp;reserved=0
    



More information about the dev mailing list