On 2/27/23 16:29, Eelco Chaudron wrote: > When the ukey's action set changes, it could cause the flow to use a > different datapath, for example, when it moves from tc to kernel. > This will cause the the cached previous datapath statistics to be used. > > This change will reset the cached statistics when a change in > datapath is discovered. > > Signed-off-by: Eelco Chaudron <echau...@redhat.com> > --- > v2: Updated commit message to explain behavior. > v3: Added a test case. > Added dpif API to query the dpif for datapath layers synchronization. > Added coverage counter to identify potential problem. > v4: Fixed some spelling, moved common code to a macro, and moved > the synced_dp_layers function pointer to a bool. > > lib/dpif-netdev.c | 1 + > lib/dpif-netlink.c | 1 + > lib/dpif-provider.h | 8 +++++ > lib/dpif.c | 5 +++ > lib/dpif.h | 1 + > ofproto/ofproto-dpif-upcall.c | 41 +++++++++++++++++++++++++- > tests/system-offloads-traffic.at | 60 > ++++++++++++++++++++++++++++++++++++++ > 7 files changed, 115 insertions(+), 2 deletions(-) >
<snip> > diff --git a/lib/dpif.c b/lib/dpif.c > index fe4db83fb..5ed8aef17 100644 > --- a/lib/dpif.c > +++ b/lib/dpif.c > @@ -2109,3 +2109,8 @@ dpif_cache_set_size(struct dpif *dpif, uint32_t level, > uint32_t size) > ? dpif->dpif_class->cache_set_size(dpif, level, size) > : EOPNOTSUPP; > } > + > +bool dpif_synced_dp_layers(struct dpif *dpif) Function name in the implementation should start form a new line. I fixed that and applied the set. Also backported down to 2.17, since it's actually a bug fix. Thanks, Eelco and Simon! Best regards, Ilya Maximets. _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev