[ovs-dev] [PATCH 0/2] Implement terse dump for netdev-offload

Simon Horman simon.horman at netronome.com
Tue Jun 2 13:36:32 UTC 2020


On Tue, Jun 02, 2020 at 01:21:16PM +0200, Simon Horman wrote:
> On Mon, Jun 01, 2020 at 03:54:54PM +0300, Roi Dayan wrote:
> > In order to improve revalidator performance, extend netdev-offload with terse
> > dump support. In terse dump mode modify code that parses netlink to flower and
> > flower to match to only provide the essential data for conversion instead of
> > parsing all filter and actions data.
> > 
> > Implement support for new TC TCA_DUMP_FLAGS_TERSE flag. With the flag set TC
> > kernel implementation skips output of all other data besides stats, cookie and
> > flags which allows to pack much more filters in single netlink packet and
> > reduces amount of syscalls required to execute filter dump.
> > 
> > The impact of the change is measured by benchmarking revalidator poll interval
> > time with 100k of simple L2 flows with two revalidator threads on setup with 2x
> > Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz, 32GB memory. For such configuration
> > poll interval is reduced from ~1020ms to ~220ms. 
> > 
> > Pointer to the kernel patches for the new TC flag:
> > https://patchwork.ozlabs.org/project/netdev/cover/20200515114014.3135-1-vladbu%40mellanox.com/
> > 
> > Vlad Buslov (2):
> >   netdev-offload: Implement terse dump support
> >   tc: Support new terse dump kernel API
> 
> Thanks Roi, Thanks Vlad,
> 
> these changes look good to me. I have put them into Travis-CI, as per my
> usual process, to see if it flags anything.
> 
> https://travis-ci.org/github/horms2/ovs/builds/693802765
> https://travis-ci.org/github/horms2/ovs/builds/693800395

Hi,

unfortunately Travis-CI has flaged a number of failures.
I am wondering if they are explained by this one:

https://travis-ci.org/github/horms2/ovs/jobs/693802778#L2874

...

ofproto/ofproto-dpif-upcall.c:2585:55: error: reading variable 'stats' requires
      holding any mutex [-Werror,-Wthread-safety-analysis]
                      udpif->dpif->current_ms : ukey->stats.used;
                                                      ^

ofproto/ofproto-dpif-upcall.c:2588:18: error: reading variable 'created'
      requires holding any mutex [-Werror,-Wthread-safety-analysis]
    return ukey->created;
                 ^

...



More information about the dev mailing list