mirror of
https://github.com/openvswitch/ovs
synced 2025-09-02 23:35:27 +00:00
dpif/dpcls: limit count subtable search info logs
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 <harry.van.haaren@intel.com> Signed-off-by: kumar Amber <kumar.amber@intel.com> Co-authored-by: kumar Amber <kumar.amber@intel.com> Acked-by: Flavio Leitner <fbl@sysclose.org> Signed-off-by: Ian Stokes <ian.stokes@intel.com>
This commit is contained in:
committed by
Ian Stokes
parent
26fbd1a1be
commit
a72c1dfbd5
@@ -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
|
terms, a subtable is chosen if its priority is greater than the previous
|
||||||
best candidate.
|
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
|
CPU ISA Testing and Validation
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
@@ -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)) {
|
if (!f && (u0_bits + u1_bits) < (NUM_U64_IN_ZMM_REG * 2)) {
|
||||||
f = dpcls_avx512_gather_mf_any;
|
f = dpcls_avx512_gather_mf_any;
|
||||||
VLOG_INFO("Using avx512_gather_mf_any for subtable (%d,%d)\n",
|
VLOG_INFO_ONCE("Using non-specialized AVX512 lookup for subtable"
|
||||||
u0_bits, u1_bits);
|
" (%d,%d) and possibly others.", u0_bits, u1_bits);
|
||||||
}
|
}
|
||||||
|
|
||||||
return f;
|
return f;
|
||||||
|
Reference in New Issue
Block a user