Re: [ovs-dev] [v5] dpif/dpcls: limit count subtable search info logs

2021-07-16 Thread Stokes, Ian
> On Tue, Jul 13, 2021 at 07:55:32AM +0530, kumar Amber wrote:
> > From: Harry van Haaren 
> >
> > This commit avoids many instances of "using subtable X for miniflow (x,y)"
> > in the ovs-vswitchd log when using the DPCLS Autovalidator. This occurs
> > when no specialized subtable is found, and the generic "_any" version of
> > the avx512 subtable search implementation was used. This change logs the
> > subtable usage once, avoiding duplicates.
> >
> > Signed-off-by: Harry van Haaren 
> > Signed-off-by: kumar Amber 
> > Co-authored-by: kumar Amber 
> >
> > ---
> 
> This patch looks good and works for me.
> 
> Acked-by: Flavio Leitner 
> 
> Thanks Kumar and Harry,
> fbl

Thanks for the patch and review, this looks straight forward 1 line log change 
and some extra documentation so have applied to master

Thanks
Ian
> ___
> dev mailing list
> d...@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [v5] dpif/dpcls: limit count subtable search info logs

2021-07-13 Thread Amber, Kumar
Thanks Flavio 😊

> -Original Message-
> From: Flavio Leitner 
> Sent: Wednesday, July 14, 2021 2:03 AM
> To: Amber, Kumar 
> Cc: ovs-dev@openvswitch.org
> Subject: Re: [ovs-dev] [v5] dpif/dpcls: limit count subtable search info logs
> 
> On Tue, Jul 13, 2021 at 07:55:32AM +0530, kumar Amber wrote:
> > From: Harry van Haaren 
> >
> > This commit avoids many instances of "using subtable X for miniflow (x,y)"
> > in the ovs-vswitchd log when using the DPCLS Autovalidator. This
> > occurs when no specialized subtable is found, and the generic "_any"
> > version of the avx512 subtable search implementation was used. This
> > change logs the subtable usage once, avoiding duplicates.
> >
> > Signed-off-by: Harry van Haaren 
> > Signed-off-by: kumar Amber 
> > Co-authored-by: kumar Amber 
> >
> > ---
> 
> This patch looks good and works for me.
> 
> Acked-by: Flavio Leitner 
> 
> Thanks Kumar and Harry,
> fbl
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [v5] dpif/dpcls: limit count subtable search info logs

2021-07-13 Thread Flavio Leitner
On Tue, Jul 13, 2021 at 07:55:32AM +0530, kumar Amber wrote:
> From: Harry van Haaren 
> 
> This commit avoids many instances of "using subtable X for miniflow (x,y)"
> in the ovs-vswitchd log when using the DPCLS Autovalidator. This occurs
> when no specialized subtable is found, and the generic "_any" version of
> the avx512 subtable search implementation was used. This change logs the
> subtable usage once, avoiding duplicates.
> 
> Signed-off-by: Harry van Haaren 
> Signed-off-by: kumar Amber 
> Co-authored-by: kumar Amber 
> 
> ---

This patch looks good and works for me.

Acked-by: Flavio Leitner 

Thanks Kumar and Harry,
fbl
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


[ovs-dev] [v5] dpif/dpcls: limit count subtable search info logs

2021-07-12 Thread kumar Amber
From: Harry van Haaren 

This commit avoids many instances of "using subtable X for miniflow (x,y)"
in the ovs-vswitchd log when using the DPCLS Autovalidator. This occurs
when no specialized subtable is found, and the generic "_any" version of
the avx512 subtable search implementation was used. This change logs the
subtable usage once, avoiding duplicates.

Signed-off-by: Harry van Haaren 
Signed-off-by: kumar Amber 
Co-authored-by: kumar Amber 

---
v5:
- fix checkpatch error
v4:
- add doc updtae from Flavio
v3:
- add comments from Flavio
- add documentation update
---
 Documentation/topics/dpdk/bridge.rst   | 34 ++
 lib/dpif-netdev-lookup-avx512-gather.c |  4 +--
 2 files changed, 36 insertions(+), 2 deletions(-)

diff --git a/Documentation/topics/dpdk/bridge.rst 
b/Documentation/topics/dpdk/bridge.rst
index 0f70a0cad..374e03eb0 100644
--- a/Documentation/topics/dpdk/bridge.rst
+++ b/Documentation/topics/dpdk/bridge.rst
@@ -182,6 +182,40 @@ chosen, and the 2nd occurance of that priority is not 
used. Put in logical
 terms, a subtable is chosen if its priority is greater than the previous
 best candidate.
 
+Optimizing Specific Subtable Search
+~~~
+
+During the packet classification, the datapath can use specialized
+lookup tables to optimize the search. However, not all situations
+are optimized. If you see a message like the following one in the OVS
+logs, it means that there is no specialized implementation available
+for the current networking traffic. In this case, OVS will continue
+to process the traffic normally using a more generic lookup table."
+
+"Using non-specialized AVX512 lookup for subtable (4,1) and possibly others."
+
+(Note that the numbers 4 and 1 will likely be different in your logs)
+
+Additional specialized lookups can be added to OVS if the user
+provides that log message along with the command output as show
+below to the OVS mailing list. Note that the numbers in the log
+message ("subtable (X,Y)") need to match with the numbers in
+the provided command output ("dp-extra-info:miniflow_bits(X,Y)").
+
+"ovs-appctl dpctl/dump-flows -m", which results in output like this:
+
+ufid:82770b5d-ca38-44ff-8283-74ba36bd1ca5, skb_priority(0/0),skb_mark(0/0)
+,ct_state(0/0),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),recirc_id(0),
+dp_hash(0/0),in_port(pcap0),packet_type(ns=0,id=0),eth(src=00:00:00:00:00:
+00/00:00:00:00:00:00,dst=ff:ff:ff:ff:ff:ff/00:00:00:00:00:00),eth_type(
+0x8100),vlan(vid=1,pcp=0),encap(eth_type(0x0800),ipv4(src=127.0.0.1/0.0.0.0
+,dst=127.0.0.1/0.0.0.0,proto=17/0,tos=0/0,ttl=64/0,frag=no),udp(src=53/0,
+dst=53/0)), packets:77072681, bytes:3545343326, used:0.000s, dp:ovs,
+actions:vhostuserclient0, dp-extra-info:miniflow_bits(4,1)
+
+Please send an email to the OVS mailing list ovs-dev@openvswitch.org with
+the output of the "dp-extra-info:miniflow_bits(4,1)" values.
+
 CPU ISA Testing and Validation
 ~~
 
diff --git a/lib/dpif-netdev-lookup-avx512-gather.c 
b/lib/dpif-netdev-lookup-avx512-gather.c
index bc359dc4a..ced846aa7 100644
--- a/lib/dpif-netdev-lookup-avx512-gather.c
+++ b/lib/dpif-netdev-lookup-avx512-gather.c
@@ -411,8 +411,8 @@ dpcls_subtable_avx512_gather_probe(uint32_t u0_bits, 
uint32_t u1_bits)
  */
 if (!f && (u0_bits + u1_bits) < (NUM_U64_IN_ZMM_REG * 2)) {
 f = dpcls_avx512_gather_mf_any;
-VLOG_INFO("Using avx512_gather_mf_any for subtable (%d,%d)\n",
-  u0_bits, u1_bits);
+VLOG_INFO_ONCE("Using non-specialized AVX512 lookup for subtable"
+   " (%d,%d) and possibly others.", u0_bits, u1_bits);
 }
 
 return f;
-- 
2.25.1

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev