From e494064913f36b0b5721b74d2da374fb6d300f80 Mon Sep 17 00:00:00 2001 From: Jakob Meng Date: Wed, 27 Sep 2023 11:37:08 +0200 Subject: [PATCH] netdev: Sync'ed and cleaned {get, set}_config() and get_status() For better usability, the function pairs get_config() and set_config() for each netdev should be symmetric: Options which are accepted by set_config() should be returned by get_config() and the latter should output valid options for set_config() only. This patch moves key-value pairs which are no valid options from get_config() to the get_status() callback. For example, get_config() in lib/netdev-dpdk.c returned {configured,requested}_{rx,tx}_queues previously. For requested rx queues the proper option name is n_rxq, so requested_rx_queues has been renamed respectively. Tx queues cannot be changed by the user, hence requested_tx_queues has been dropped. Both configured_{rx,tx}_queues will be returned as n_{r,t}xq in the get_status() callback. The documentation in vswitchd/vswitch.xml for status columns has been updated accordingly. Status columns pci-vendor_id and pci-device_id have been replaced with bus_info in order to sync changes from [0]. [0] https://github.com/openvswitch/ovs/commit/a77c7796f23a76190b61e2109a009df980253b0f Reported-at: https://bugzilla.redhat.com/1949855 Signed-off-by: Jakob Meng Signed-off-by: 0-day Robot --- Documentation/intro/install/afxdp.rst | 12 ++--- Documentation/topics/dpdk/phy.rst | 4 +- lib/netdev-afxdp.c | 21 +++++++- lib/netdev-afxdp.h | 1 + lib/netdev-dpdk.c | 49 ++++++++++-------- lib/netdev-dummy.c | 17 ++++-- lib/netdev-linux-private.h | 2 + lib/netdev-linux.c | 4 +- tests/bridge.at | 14 ++--- tests/dpctl.at | 12 ++--- tests/mcast-snooping.at | 6 +-- tests/mpls-xlate.at | 34 ++++++------ tests/netdev-type.at | 4 +- tests/nsh.at | 20 ++++---- tests/ofproto-dpif.at | 36 ++++++------- tests/ovs-ofctl.at | 4 +- tests/ovs-vswitchd.at | 6 +-- tests/packet-type-aware.at | 50 +++++++++--------- tests/pmd.at | 42 +++++++-------- tests/system-layer3-tunnels.at | 8 +-- tests/tunnel-push-pop-ipv6.at | 18 +++---- tests/tunnel-push-pop.at | 18 +++---- tests/tunnel.at | 74 +++++++++++++-------------- vswitchd/vswitch.xml | 69 +++++++++++++++++++++++-- 24 files changed, 310 insertions(+), 215 deletions(-) diff --git a/Documentation/intro/install/afxdp.rst b/Documentation/intro/install/afxdp.rst index 51c24bf5b1e..4153e5bc039 100644 --- a/Documentation/intro/install/afxdp.rst +++ b/Documentation/intro/install/afxdp.rst @@ -219,14 +219,10 @@ Otherwise, enable debugging by:: ovs-appctl vlog/set netdev_afxdp::dbg To check which XDP mode was chosen by ``best-effort``, you can look for -``xdp-mode-in-use`` in the output of ``ovs-appctl dpctl/show``:: - - # ovs-appctl dpctl/show - netdev@ovs-netdev: - <...> - port 2: ens802f0 (afxdp: n_rxq=1, use-need-wakeup=true, - xdp-mode=best-effort, - xdp-mode-in-use=native-with-zerocopy) +``xdp-mode`` in the output of ``ovs-vsctl get interface NAME status:xdp-mode``:: + + # ovs-vsctl get interface ens802f0 status:xdp-mode + "native-with-zerocopy" References ---------- diff --git a/Documentation/topics/dpdk/phy.rst b/Documentation/topics/dpdk/phy.rst index f66b106c46a..41cc3588abf 100644 --- a/Documentation/topics/dpdk/phy.rst +++ b/Documentation/topics/dpdk/phy.rst @@ -198,7 +198,7 @@ Example:: a dedicated queue, it will be explicit:: $ ovs-vsctl get interface dpdk-p0 status - {..., rx_steering=unsupported} + {..., rx-steering=unsupported} More details can often be found in ``ovs-vswitchd.log``:: @@ -499,7 +499,7 @@ its options:: $ ovs-appctl dpctl/show [...] - port 3: dpdk-rep0 (dpdk: configured_rx_queues=1, ..., dpdk-vf-mac=00:11:22:33:44:55, ...) + port 3: dpdk-rep0 (dpdk: ..., dpdk-vf-mac=00:11:22:33:44:55, ...) $ ovs-vsctl show [...] diff --git a/lib/netdev-afxdp.c b/lib/netdev-afxdp.c index 16f26bc3065..3bd3dff4a78 100644 --- a/lib/netdev-afxdp.c +++ b/lib/netdev-afxdp.c @@ -672,8 +672,6 @@ netdev_afxdp_get_config(const struct netdev *netdev, struct smap *args) ovs_mutex_lock(&dev->mutex); smap_add_format(args, "n_rxq", "%d", netdev->n_rxq); smap_add_format(args, "xdp-mode", "%s", xdp_modes[dev->xdp_mode].name); - smap_add_format(args, "xdp-mode-in-use", "%s", - xdp_modes[dev->xdp_mode_in_use].name); smap_add_format(args, "use-need-wakeup", "%s", dev->use_need_wakeup ? "true" : "false"); ovs_mutex_unlock(&dev->mutex); @@ -1367,3 +1365,22 @@ netdev_afxdp_get_stats(const struct netdev *netdev, return error; } + +int +netdev_afxdp_get_status(const struct netdev *netdev, + struct smap *args) +{ + int error = netdev_linux_get_status(netdev, args); + if (error) { + return error; + } + + struct netdev_linux *dev = netdev_linux_cast(netdev); + + ovs_mutex_lock(&dev->mutex); + smap_add_format(args, "xdp-mode", "%s", + xdp_modes[dev->xdp_mode_in_use].name); + ovs_mutex_unlock(&dev->mutex); + + return error; +} diff --git a/lib/netdev-afxdp.h b/lib/netdev-afxdp.h index e91cd102d28..bd3b9dfbead 100644 --- a/lib/netdev-afxdp.h +++ b/lib/netdev-afxdp.h @@ -63,6 +63,7 @@ int netdev_afxdp_set_config(struct netdev *netdev, const struct smap *args, int netdev_afxdp_get_config(const struct netdev *netdev, struct smap *args); int netdev_afxdp_get_stats(const struct netdev *netdev_, struct netdev_stats *stats); +int netdev_afxdp_get_status(const struct netdev *netdev, struct smap *args); int netdev_afxdp_get_custom_stats(const struct netdev *netdev, struct netdev_custom_stats *custom_stats); diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 55700250df2..73943639f7a 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -1905,24 +1905,26 @@ netdev_dpdk_get_config(const struct netdev *netdev, struct smap *args) ovs_mutex_lock(&dev->mutex); - smap_add_format(args, "requested_rx_queues", "%d", dev->user_n_rxq); - smap_add_format(args, "configured_rx_queues", "%d", netdev->n_rxq); - smap_add_format(args, "requested_tx_queues", "%d", dev->requested_n_txq); - smap_add_format(args, "configured_tx_queues", "%d", netdev->n_txq); - smap_add_format(args, "mtu", "%d", dev->mtu); + smap_add_format(args, "dpdk-devargs", "%s", dev->devargs); + smap_add_format(args, "n_rxq", "%d", dev->user_n_rxq); + smap_add_format(args, "rx-flow-ctrl", "%s", + dev->fc_conf.mode == RTE_ETH_FC_TX_PAUSE || + dev->fc_conf.mode == RTE_ETH_FC_FULL ? "true" : "false"); + smap_add_format(args, "tx-flow-ctrl", "%s", + dev->fc_conf.mode == RTE_ETH_FC_RX_PAUSE || + dev->fc_conf.mode == RTE_ETH_FC_FULL ? "true" : "false"); + smap_add_format(args, "flow-ctrl-autoneg", "%s", + dev->fc_conf.autoneg ? "true" : "false"); if (dev->type == DPDK_DEV_ETH) { smap_add_format(args, "n_rxq_desc", "%d", dev->rxq_size); smap_add_format(args, "n_txq_desc", "%d", dev->txq_size); - if (dev->hw_ol_features & NETDEV_RX_CHECKSUM_OFFLOAD) { - smap_add(args, "rx_csum_offload", "true"); - } else { - smap_add(args, "rx_csum_offload", "false"); - } + if (dev->rx_steer_flags == DPDK_RX_STEER_LACP) { smap_add(args, "rx-steering", "rss+lacp"); } - smap_add(args, "lsc_interrupt_mode", + + smap_add(args, "dpdk-lsc-interrupt", dev->lsc_interrupt_mode ? "true" : "false"); if (dpdk_port_is_representor(dev)) { @@ -1930,6 +1932,7 @@ netdev_dpdk_get_config(const struct netdev *netdev, struct smap *args) ETH_ADDR_ARGS(dev->requested_hwaddr)); } } + ovs_mutex_unlock(&dev->mutex); return 0; @@ -4160,6 +4163,13 @@ netdev_dpdk_get_status(const struct netdev *netdev, struct smap *args) dev_info.max_hash_mac_addrs); smap_add_format(args, "max_vfs", "%u", dev_info.max_vfs); smap_add_format(args, "max_vmdq_pools", "%u", dev_info.max_vmdq_pools); + + smap_add_format(args, "n_rxq", "%d", netdev->n_rxq); + smap_add_format(args, "n_txq", "%d", netdev->n_txq); + + smap_add(args, "rx_csum_offload", + dev->hw_ol_features & NETDEV_RX_CHECKSUM_OFFLOAD + ? "true" : "false"); /* Querying the DPDK library for iftype may be done in future, pending * support; cf. RFC 3635 Section 3.2.4. */ @@ -4186,16 +4196,15 @@ netdev_dpdk_get_status(const struct netdev *netdev, struct smap *args) ETH_ADDR_ARGS(dev->hwaddr)); } - if (rx_steer_flags) { - if (!rx_steer_flows_num) { - smap_add(args, "rx_steering", "unsupported"); + smap_add(args, "rx-steering", dev->rx_steer_flags == DPDK_RX_STEER_LACP + ? "rss+lacp" : "unsupported"); + + if (rx_steer_flags && rx_steer_flows_num) { + smap_add_format(args, "rx_steering_queue", "%d", n_rxq - 1); + if (n_rxq > 2) { + smap_add_format(args, "rss_queues", "0-%d", n_rxq - 2); } else { - smap_add_format(args, "rx_steering_queue", "%d", n_rxq - 1); - if (n_rxq > 2) { - smap_add_format(args, "rss_queues", "0-%d", n_rxq - 2); - } else { - smap_add(args, "rss_queues", "0"); - } + smap_add(args, "rss_queues", "0"); } } diff --git a/lib/netdev-dummy.c b/lib/netdev-dummy.c index 1a54add87f0..5242c8d1e5e 100644 --- a/lib/netdev-dummy.c +++ b/lib/netdev-dummy.c @@ -795,14 +795,23 @@ netdev_dummy_get_config(const struct netdev *dev, struct smap *args) dummy_packet_conn_get_config(&netdev->conn, args); + /* pcap, rxq_pcap and tx_pcap cannot be recovered because filenames have + * been discarded after opening file descriptors */ + + smap_add_format(args, "ol_ip_csum_set_good", "%s", + netdev->ol_ip_csum_set_good ? "true" : "false"); + + smap_add_format(args, "ol_ip_csum", "%s", + netdev->ol_ip_csum ? "true" : "false"); + /* 'dummy-pmd' specific config. */ if (!netdev_is_pmd(dev)) { goto exit; } - smap_add_format(args, "requested_rx_queues", "%d", netdev->requested_n_rxq); - smap_add_format(args, "configured_rx_queues", "%d", dev->n_rxq); - smap_add_format(args, "requested_tx_queues", "%d", netdev->requested_n_txq); - smap_add_format(args, "configured_tx_queues", "%d", dev->n_txq); + + smap_add_format(args, "n_rxq", "%d", netdev->requested_n_rxq); + smap_add_format(args, "n_txq", "%d", netdev->requested_n_txq); + smap_add_format(args, "numa_id", "%d", netdev->requested_numa_id); exit: ovs_mutex_unlock(&netdev->mutex); diff --git a/lib/netdev-linux-private.h b/lib/netdev-linux-private.h index 0ecf0f748f9..53e68d1221c 100644 --- a/lib/netdev-linux-private.h +++ b/lib/netdev-linux-private.h @@ -55,6 +55,8 @@ void netdev_linux_run(const struct netdev_class *); int get_stats_via_netlink(const struct netdev *netdev_, struct netdev_stats *stats); +int netdev_linux_get_status(const struct netdev *netdev_, struct smap *smap); + struct netdev_linux { struct netdev up; diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index cca3408797e..70521e3c7f7 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -3493,7 +3493,7 @@ netdev_linux_get_next_hop(const struct in_addr *host, struct in_addr *next_hop, return ENXIO; } -static int +int netdev_linux_get_status(const struct netdev *netdev_, struct smap *smap) { struct netdev_linux *netdev = netdev_linux_cast(netdev_); @@ -3759,7 +3759,7 @@ const struct netdev_class netdev_internal_class = { .destruct = netdev_afxdp_destruct, \ .get_stats = netdev_afxdp_get_stats, \ .get_custom_stats = netdev_afxdp_get_custom_stats, \ - .get_status = netdev_linux_get_status, \ + .get_status = netdev_afxdp_get_status, \ .set_config = netdev_afxdp_set_config, \ .get_config = netdev_afxdp_get_config, \ .reconfigure = netdev_afxdp_reconfigure, \ diff --git a/tests/bridge.at b/tests/bridge.at index 904f1381c78..7e1760f78f3 100644 --- a/tests/bridge.at +++ b/tests/bridge.at @@ -12,9 +12,9 @@ add_of_ports br0 1 2 AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) # Delete p1 from the datapath with "ovs-dpctl del-if" @@ -23,8 +23,8 @@ AT_CHECK([ovs-appctl dpctl/del-if dummy@ovs-dummy p1]) AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) # Force reconfiguration and make sure that p1 got added back. @@ -32,8 +32,8 @@ AT_CHECK([ovs-vsctl del-port p2]) AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) OVS_APP_EXIT_AND_WAIT([ovs-vswitchd]) OVS_APP_EXIT_AND_WAIT([ovsdb-server]) diff --git a/tests/dpctl.at b/tests/dpctl.at index d2f1046f8b5..57e7ef0e961 100644 --- a/tests/dpctl.at +++ b/tests/dpctl.at @@ -23,15 +23,15 @@ AT_CHECK([ovs-appctl dpctl/show dummy@br0], [0], [dnl dummy@br0: lookups: hit:0 missed:0 lost:0 flows: 0 - port 0: br0 (dummy-internal) + port 0: br0 (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/add-if dummy@br0 vif1.0,type=dummy,port_no=5]) AT_CHECK([ovs-appctl dpctl/show dummy@br0], [0], [dnl dummy@br0: lookups: hit:0 missed:0 lost:0 flows: 0 - port 0: br0 (dummy-internal) - port 5: vif1.0 (dummy) + port 0: br0 (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + port 5: vif1.0 (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/add-if dummy@br0 vif1.0,type=dummy], [2], [], [stderr]) @@ -54,7 +54,7 @@ AT_CHECK([ovs-appctl dpctl/show dummy@br0], [0], [dnl dummy@br0: lookups: hit:0 missed:0 lost:0 flows: 0 - port 0: br0 (dummy-internal) + port 0: br0 (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/del-if dummy@br0 vif1.0], [2], [], [ovs-vswitchd: no port named vif1.0 @@ -64,7 +64,7 @@ AT_CHECK([ovs-appctl dpctl/show dummy@br0], [0], [dnl dummy@br0: lookups: hit:0 missed:0 lost:0 flows: 0 - port 0: br0 (dummy-internal) + port 0: br0 (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/del-if dummy@br0 nonexistent], [2], [], [ovs-vswitchd: no port named nonexistent @@ -150,4 +150,4 @@ ovs-appctl: ovs-vswitchd: server returned an error ]) AT_CHECK([ovs-appctl dpctl/ct-del-limits zone=]) OVS_VSWITCHD_STOP -AT_CLEANUP \ No newline at end of file +AT_CLEANUP diff --git a/tests/mcast-snooping.at b/tests/mcast-snooping.at index d5b7c4774c7..19fac46c63e 100644 --- a/tests/mcast-snooping.at +++ b/tests/mcast-snooping.at @@ -24,9 +24,9 @@ AT_CHECK([ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) ovs-appctl time/stop diff --git a/tests/mpls-xlate.at b/tests/mpls-xlate.at index 7474becc891..d777298e0e6 100644 --- a/tests/mpls-xlate.at +++ b/tests/mpls-xlate.at @@ -16,11 +16,11 @@ OVS_VSWITCHD_START( AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 2/none: (patch: peer=p2) br1: - br1 65534/101: (dummy-internal) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p2 1/none: (patch: peer=p1) ]) @@ -163,13 +163,13 @@ AT_CHECK([ovs-appctl vlog/set dpif:dbg dpif_netdev:dbg ofproto_dpif_upcall:dbg]) AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 2/none: (patch: peer=p2) br1: - br1 65534/101: (dummy-internal) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p2 1/none: (patch: peer=p1) - p3 3/3: (dummy) + p3 3/3: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl MPLS PUSH + POP. @@ -225,13 +225,13 @@ OVS_VSWITCHD_START( AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p2 2/none: (patch: peer=p3) br1: - br1 65534/101: (dummy-internal) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p3 3/none: (patch: peer=p2) - p4 4/4: (dummy) + p4 4/4: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-ofctl del-flows br0]) @@ -276,9 +276,9 @@ OVS_VSWITCHD_START([dnl AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-ofctl del-flows br0]) @@ -307,9 +307,9 @@ OVS_VSWITCHD_START([dnl AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-ofctl del-flows br0]) diff --git a/tests/netdev-type.at b/tests/netdev-type.at index c62a81f9cda..e2ea520a009 100644 --- a/tests/netdev-type.at +++ b/tests/netdev-type.at @@ -9,8 +9,8 @@ add_of_ports br0 1 AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) # # Set MAC address of dummy device and check that it has been set diff --git a/tests/nsh.at b/tests/nsh.at index 55296e5593a..125a0fe605f 100644 --- a/tests/nsh.at +++ b/tests/nsh.at @@ -631,31 +631,31 @@ AT_CHECK([ ### Verify datapath configuration AT_CHECK([ovs-appctl dpif/show | grep -v hit], [0], [dnl br-in1: - br-in1 65534/101: (dummy-internal) - n1 10/4: (dummy) + br-in1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n1 10/4: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) vxlangpe12 1020/4789: (vxlan: packet_type=ptap, remote_ip=10.0.0.2) vxlangpe13 1030/4789: (vxlan: packet_type=ptap, remote_ip=10.0.0.3) br-in2: - br-in2 65534/102: (dummy-internal) - n2 20/5: (dummy) + br-in2 65534/102: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n2 20/5: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) vxlangpe21 2010/4789: (vxlan: packet_type=ptap, remote_ip=20.0.0.1) vxlangpe23 2030/4789: (vxlan: packet_type=ptap, remote_ip=20.0.0.3) br-in3: - br-in3 65534/103: (dummy-internal) - n3 30/6: (dummy) + br-in3 65534/103: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n3 30/6: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) vxlangpe31 3010/4789: (vxlan: packet_type=ptap, remote_ip=30.0.0.1) vxlangpe32 3020/4789: (vxlan: packet_type=ptap, remote_ip=30.0.0.2) br-p1: - br-p1 65534/1: (dummy-internal) + br-p1 65534/1: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1-0 2/none: (patch: peer=p0-1) br-p2: - br-p2 65534/2: (dummy-internal) + br-p2 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p2-0 2/none: (patch: peer=p0-2) br-p3: - br-p3 65534/3: (dummy-internal) + br-p3 65534/3: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p3-0 2/none: (patch: peer=p0-3) br0: - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p0-1 10/none: (patch: peer=p1-0) p0-2 20/none: (patch: peer=p2-0) p0-3 30/none: (patch: peer=p3-0) diff --git a/tests/ofproto-dpif.at b/tests/ofproto-dpif.at index a39d0d3ae98..976855ab3b7 100644 --- a/tests/ofproto-dpif.at +++ b/tests/ofproto-dpif.at @@ -7473,9 +7473,9 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: key=5, local_ip=2.2.2.2, remote_ip=1.1.1.1) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl Basic @@ -7645,12 +7645,12 @@ AT_CHECK([ovs-vsctl -- add-port int-br t1 -- set Interface t1 type=gre \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy: ifindex=1010) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ifindex=1010, ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 4/4: (gre: key=456, remote_ip=1.1.2.92) - vm1 5/3: (dummy: ifindex=2011) + vm1 5/3: (dummy: ifindex=2011, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl set up route to 1.1.2.92 via br0 and action=normal @@ -8777,12 +8777,12 @@ add_of_ports br1 3 AT_CHECK([ovs-appctl dpif/show | sed 's/\(dummy-pmd: \).*)/\1)/'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (dummy-pmd: ) p2 2/2: (dummy-pmd: ) br1: - br1 65534/101: (dummy-internal) - p3 3/3: (dummy) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p3 3/3: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) OVS_VSWITCHD_STOP AT_CLEANUP @@ -8961,12 +8961,12 @@ sleep 1 # wait for log writer AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:13 missed:2 br0: - br0 65534/100: (dummy-internal) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) pbr0 1/none: (patch: peer=pbr1) br1: - br1 65534/101: (dummy-internal) - p3 3/3: (dummy) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p3 3/3: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) pbr1 1/none: (patch: peer=pbr0) ]) @@ -9026,12 +9026,12 @@ OVS_WAIT_UNTIL([test `grep flow_add ovs-vswitchd.log | wc -l` -ge 1]) AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:1 br0: - br0 65534/100: (dummy-internal) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) pbr0 1/none: (patch: peer=pbr1) br1: - br1 65534/101: (dummy-internal) - p3 3/3: (dummy) + br1 65534/101: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p3 3/3: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) pbr1 1/none: (patch: peer=pbr0) ]) @@ -9841,7 +9841,7 @@ done OVS_VSWITCHD_STOP AT_CLEANUP - + AT_BANNER([ofproto-dpif - flow translation resource limits]) dnl Resubmits to later tables do not count against the depth limit, so we diff --git a/tests/ovs-ofctl.at b/tests/ovs-ofctl.at index 8531b2e2eb6..a6ca76d8f37 100644 --- a/tests/ovs-ofctl.at +++ b/tests/ovs-ofctl.at @@ -2991,8 +2991,8 @@ AT_CHECK([ovs-ofctl add-flow br0 "tcp,tcp_flags=+ack-ack,action="], [1], [], ]) AT_CHECK([ovs-appctl dpif/show | tail -n +4], [0], [dnl - p1 1/1: (dummy) - p2 2/2: (dummy) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl Outbound web traffic with bare-SYN diff --git a/tests/ovs-vswitchd.at b/tests/ovs-vswitchd.at index 977b2eba1f2..a5ae534bcfd 100644 --- a/tests/ovs-vswitchd.at +++ b/tests/ovs-vswitchd.at @@ -188,9 +188,9 @@ AT_CHECK([ovs-vsctl add-port br0 p1 -- set interface p1 type=internal]) dnl ovs-vswitchd should still 'see' ovsdb change with the 'monitor' method AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) - p0 1/1: (dummy-internal) - p1 2/2: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 2/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) OVS_VSWITCHD_STOP AT_CLEANUP diff --git a/tests/packet-type-aware.at b/tests/packet-type-aware.at index 14cebf6efa5..d3c5a2f3dae 100644 --- a/tests/packet-type-aware.at +++ b/tests/packet-type-aware.at @@ -236,33 +236,33 @@ AT_CHECK([ ovs-appctl dpif/show | grep -v hit | sed 's./[[0-9]]\{1,\}..' ], [0], [dnl br-in1: - br-in1 65534: (dummy-internal) + br-in1 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) gre12 1020: (gre: remote_ip=10.0.0.2) gre12_l3 1021: (gre: packet_type=legacy_l3, remote_ip=10.0.0.2) gre13 1030: (gre: remote_ip=10.0.0.3) - n1 10: (dummy) + n1 10: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) br-in2: - br-in2 65534: (dummy-internal) + br-in2 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) gre21 2010: (gre: packet_type=ptap, remote_ip=20.0.0.1) gre23 2030: (gre: packet_type=ptap, remote_ip=20.0.0.3) - n2 20: (dummy) + n2 20: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) br-in3: - br-in3 65534: (dummy-internal) + br-in3 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) gre31 3010: (gre: remote_ip=30.0.0.1) gre32 3020: (gre: remote_ip=30.0.0.2) gre32_l3 3021: (gre: packet_type=legacy_l3, remote_ip=30.0.0.2) - n3 30: (dummy) + n3 30: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) br-p1: - br-p1 65534: (dummy-internal) + br-p1 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1-0 2/none: (patch: peer=p0-1) br-p2: - br-p2 65534: (dummy-internal) + br-p2 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p2-0 2/none: (patch: peer=p0-2) br-p3: - br-p3 65534: (dummy-internal) + br-p3 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p3-0 2/none: (patch: peer=p0-3) br0: - br0 65534: (dummy-internal) + br0 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p0-1 10/none: (patch: peer=p1-0) p0-2 20/none: (patch: peer=p2-0) p0-3 30/none: (patch: peer=p3-0) @@ -666,17 +666,17 @@ AT_CHECK([ ovs-appctl dpif/show | grep -v hit | sed 's./[[0-9]]\{1,\}..' ], [0], [dnl br0: - br0 65534: (dummy-internal) - n0 30: (dummy) + br0 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n0 30: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p0 10/none: (patch: peer=p1) br1: - br1 65534: (dummy-internal) + br1 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) gre1 100: (gre: packet_type=ptap, remote_ip=10.0.0.2) - n1 40: (dummy) + n1 40: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 20/none: (patch: peer=p0) br2: - br2 65534: (dummy-internal) - n2 50: (dummy) + br2 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n2 50: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ @@ -845,17 +845,17 @@ AT_CHECK([ ovs-appctl dpif/show | grep -v hit | sed 's./[[0-9]]\{1,\}..' ], [0], [dnl br0: - br0 65534: (dummy-internal) - n0 30: (dummy) + br0 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n0 30: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p0 10/none: (patch: peer=p1) br1: - br1 65534: (dummy-internal) + br1 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) gre1 100: (gre: packet_type=legacy_l3, remote_ip=10.0.0.2) - n1 40: (dummy) + n1 40: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 20/none: (patch: peer=p0) br2: - br2 65534: (dummy-internal) - n2 50: (dummy) + br2 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + n2 50: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ @@ -946,10 +946,10 @@ AT_CHECK([ ovs-appctl dpif/show | grep -v hit | sed 's./[[0-9]]\{1,\}..' ], [0], [dnl br0: - br0 65534: (dummy-internal) - p0 1: (dummy) + br0 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534: (dummy-internal) + int-br 65534: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) tunnel 2: (gre: packet_type=legacy_l3, remote_ip=20.0.0.2) ]) diff --git a/tests/pmd.at b/tests/pmd.at index 7bdaca9e71f..4b839878754 100644 --- a/tests/pmd.at +++ b/tests/pmd.at @@ -93,11 +93,11 @@ pmd thread numa_id core_id : overhead: NOT AVAIL ]) -AT_CHECK([ovs-appctl dpif/show | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl +AT_CHECK([ovs-appctl dpif/show | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy-pmd: configured_rx_queues=1, configured_tx_queues=, requested_rx_queues=1, requested_tx_queues=) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy-pmd: n_rxq=1, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) OVS_VSWITCHD_STOP @@ -111,11 +111,11 @@ CHECK_PMD_THREADS_CREATED() AT_CHECK([ovs-vsctl set interface p0 options:n_rxq=8]) -AT_CHECK([ovs-appctl dpif/show | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl +AT_CHECK([ovs-appctl dpif/show | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy-pmd: configured_rx_queues=8, configured_tx_queues=, requested_rx_queues=8, requested_tx_queues=) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy-pmd: n_rxq=8, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpif-netdev/pmd-rxq-show | sed SED_NUMA_CORE_PATTERN], [0], [dnl @@ -144,11 +144,11 @@ OVS_VSWITCHD_START([add-port br0 p0 -- set Interface p0 type=dummy-pmd options:n CHECK_CPU_DISCOVERED(2) CHECK_PMD_THREADS_CREATED() -AT_CHECK([ovs-appctl dpif/show | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl +AT_CHECK([ovs-appctl dpif/show | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy-pmd: configured_rx_queues=8, configured_tx_queues=, requested_rx_queues=8, requested_tx_queues=) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy-pmd: n_rxq=8, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpif-netdev/pmd-rxq-show | sed SED_NUMA_CORE_PATTERN], [0], [dnl @@ -227,11 +227,11 @@ TMP=$(($(cat ovs-vswitchd.log | wc -l | tr -d [[:blank:]])+1)) CHECK_CPU_DISCOVERED(4) CHECK_PMD_THREADS_CREATED() -AT_CHECK([ovs-appctl dpif/show | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl +AT_CHECK([ovs-appctl dpif/show | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy-pmd: configured_rx_queues=8, configured_tx_queues=, requested_rx_queues=8, requested_tx_queues=) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy-pmd: n_rxq=8, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpif-netdev/pmd-rxq-show | sed SED_NUMA_CORE_PATTERN], [0], [dnl @@ -436,11 +436,11 @@ AT_CHECK([ovs-vsctl set Open_vSwitch . other_config:smc-enable=true]) sleep 1 -AT_CHECK([ovs-appctl dpif/show | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl +AT_CHECK([ovs-appctl dpif/show | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 7/1: (dummy-pmd: configured_rx_queues=4, configured_tx_queues=, requested_rx_queues=4, requested_tx_queues=) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 7/1: (dummy-pmd: n_rxq=4, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpif-netdev/pmd-stats-show | sed SED_NUMA_CORE_PATTERN | sed '/cycles/d' | grep pmd -A 12], [0], [dnl @@ -604,8 +604,8 @@ icmp,vlan_tci=0x0000,dl_src=50:54:00:00:00:09,dl_dst=50:54:00:00:00:0a,nw_src=10 dnl Check resetting to default number of rx queues after removal from the db. AT_CHECK([ovs-vsctl remove interface p1 options n_rxq]) -AT_CHECK([ovs-appctl dpif/show | grep p1 | sed 's/\(tx_queues=\)[[0-9]]*/\1/g'], [0], [dnl - p1 1/1: (dummy-pmd: configured_rx_queues=1, configured_tx_queues=, requested_rx_queues=1, requested_tx_queues=) +AT_CHECK([ovs-appctl dpif/show | grep p1 | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl + p1 1/1: (dummy-pmd: n_rxq=1, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) ]) OVS_VSWITCHD_STOP @@ -1147,13 +1147,13 @@ AT_CHECK([ovs-appctl dpif-netdev/pmd-rxq-show dp0 | parse_pmd_rxq_show], [0], [d p1 0 0 0 ]) -AT_CHECK([ovs-appctl dpctl/show dummy@dp0], [0], [dnl +AT_CHECK([ovs-appctl dpctl/show dummy@dp0 | sed 's/\(numa_id=\)[[0-9]]*/\1/g'], [0], [dnl dummy@dp0: lookups: hit:0 missed:0 lost:0 flows: 0 - port 0: dp0 (dummy-internal) - port 1: p1 (dummy-pmd: configured_rx_queues=1, configured_tx_queues=1, requested_rx_queues=1, requested_tx_queues=1) - port 2: p2 (dummy) + port 0: dp0 (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + port 1: p1 (dummy-pmd: n_rxq=1, n_txq=1, numa_id=, ol_ip_csum=false, ol_ip_csum_set_good=false) + port 2: p2 (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/add-flow dummy@dp0 'in_port(1),eth(src=00:00:00:00:00:01,dst=00:00:00:00:00:02),eth_type(0x1234)' 2], [0], [dnl diff --git a/tests/system-layer3-tunnels.at b/tests/system-layer3-tunnels.at index 81123f7309a..1833b159dfa 100644 --- a/tests/system-layer3-tunnels.at +++ b/tests/system-layer3-tunnels.at @@ -109,11 +109,11 @@ AT_CHECK([ovs-vsctl add-port int-br t1 -- set Interface t1 type=gre \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) - vtep0 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + vtep0 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/3: (dummy-internal) + int-br 65534/3: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 3/4: (gre: remote_ip=1.1.2.92) ]) diff --git a/tests/tunnel-push-pop-ipv6.at b/tests/tunnel-push-pop-ipv6.at index a8dd28c5b59..552ea77677c 100644 --- a/tests/tunnel-push-pop-ipv6.at +++ b/tests/tunnel-push-pop-ipv6.at @@ -98,10 +98,10 @@ AT_CHECK([ovs-vsctl add-port int-br t2 -- set Interface t2 type=ip6gre \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t2 2/6: (ip6gre: remote_ip=2001:cafe::92) ]) @@ -171,10 +171,10 @@ AT_CHECK([ovs-vsctl add-port int-br t2 -- set Interface t2 type=ip6erspan \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t2 2/6: (ip6erspan: erspan_idx=0x3, erspan_ver=1, key=123, remote_ip=2001:cafe::92) t3 3/6: (ip6erspan: erspan_dir=1, erspan_hwid=0x7, erspan_ver=2, key=567, remote_ip=2001:cafe::93) ]) @@ -295,10 +295,10 @@ AT_CHECK([ovs-vsctl add-port int-br t2 -- set Interface t2 type=vxlan \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 3/3: (gre: key=456, remote_ip=2001:cafe::92) t2 2/4789: (vxlan: key=123, remote_ip=2001:cafe::92) t3 4/4789: (vxlan: csum=true, out_key=flow, remote_ip=2001:cafe::93) diff --git a/tests/tunnel-push-pop.at b/tests/tunnel-push-pop.at index b1440f59045..7fdef41cb6e 100644 --- a/tests/tunnel-push-pop.at +++ b/tests/tunnel-push-pop.at @@ -20,10 +20,10 @@ AT_CHECK([ovs-vsctl add-port int-br t1 -- set Interface t1 type=erspan \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 2/3: (erspan: erspan_idx=0x3, erspan_ver=1, key=123, remote_ip=1.1.2.92) t2 3/3: (erspan: erspan_dir=1, erspan_hwid=0x7, erspan_ver=2, key=567, remote_ip=1.1.2.92) t3 4/3: (erspan: erspan_dir=flow, erspan_hwid=flow, erspan_ver=2, key=456, remote_ip=flow) @@ -223,10 +223,10 @@ AT_CHECK([ovs-vsctl add-port int-br t2 -- set Interface t2 type=vxlan \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 3/3: (gre: key=456, remote_ip=1.1.2.92) t2 2/4789: (vxlan: key=123, remote_ip=1.1.2.92) t3 4/4789: (vxlan: csum=true, out_key=flow, remote_ip=1.1.2.93) @@ -787,10 +787,10 @@ AT_CHECK([ovs-vsctl add-port int-br t1 -- set Interface t1 type=gre \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) t1 3/3: (gre: key=456, remote_ip=1.1.2.92, seq=true) ]) diff --git a/tests/tunnel.at b/tests/tunnel.at index ddeb66bc9fb..32acf08c0ab 100644 --- a/tests/tunnel.at +++ b/tests/tunnel.at @@ -16,7 +16,7 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1) p2 2/1: (gre: local_ip=2.2.2.2, remote_ip=1.1.1.1) p3 3/1: (gre: remote_ip=2.2.2.2) @@ -39,7 +39,7 @@ AT_CHECK([ovs-vsctl set Interface p2 type=gre options:local_ip=2.2.2.3 \ options:df_default=false options:ttl=1 options:csum=true \ -- set Interface p3 type=vxlan]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1) p2 2/1: (gre: csum=true, df_default=false, local_ip=2.2.2.3, remote_ip=1.1.1.1, ttl=1) p3 3/4789: (vxlan: remote_ip=2.2.2.2) @@ -74,9 +74,9 @@ actions=2 AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl Tunnel CE and encapsulated packet CE @@ -118,9 +118,9 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=gre \ ofport_request=2]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl dpctl/add-flow "tunnel(dst=1.1.1.1,src=3.3.3.200/255.255.255.0,tp_dst=123,tp_src=1,ttl=64),recirc_id(0),in_port(1),eth(),eth_type(0x0800),ipv4()" "2"]) @@ -138,9 +138,9 @@ OVS_VSWITCHD_START([add-port br0 p1 \ -- add-port br0 p2 -- set Interface p2 type=dummy ofport_request=2]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dst_single="dst=1.1.1.1" @@ -175,9 +175,9 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: key=5, local_ip=2.2.2.2, remote_ip=1.1.1.1) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl Basic @@ -273,9 +273,9 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: remote_ip=1.1.1.1, tos=inherit, ttl=inherit) - p2 2/2: (dummy) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl Basic @@ -316,7 +316,7 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: key=flow, remote_ip=1.1.1.1) p2 2/1: (gre: key=flow, remote_ip=2.2.2.2) p3 3/1: (gre: key=flow, remote_ip=3.3.3.3) @@ -349,7 +349,7 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: key=1, remote_ip=1.1.1.1) p2 2/1: (gre: in_key=2, out_key=3, remote_ip=1.1.1.1) p3 3/1: (gre: out_key=5, remote_ip=1.1.1.1) @@ -402,12 +402,12 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (gre: key=flow, remote_ip=1.1.1.1) p2 2/1: (gre: key=3, remote_ip=3.3.3.3) - p3 3/3: (dummy) - p4 4/4: (dummy) - p5 5/5: (dummy) + p3 3/3: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p4 4/4: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p5 5/5: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) AT_CHECK([ovs-appctl ofproto/trace ovs-dummy 'tunnel(tun_id=0x2,src=1.1.1.1,dst=2.2.2.2,ttl=64,flags(key)),in_port(1),eth(src=50:54:00:00:00:05,dst=50:54:00:00:00:07),eth_type(0x0800),ipv4(src=192.168.0.1,dst=192.168.0.2,proto=6,tos=0,ttl=64,frag=no),tcp(src=8,dst=9)'], [0], [stdout]) @@ -438,7 +438,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=geneve \ options:remote_ip=1.1.1.1 ofport_request=1 options:dst_port=5000]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/5000: (geneve: dst_port=5000, remote_ip=1.1.1.1) ]) @@ -450,7 +450,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=vxlan \ options:remote_ip=1.1.1.1 ofport_request=1]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/4789: (vxlan: remote_ip=1.1.1.1) ]) @@ -472,12 +472,12 @@ AT_CHECK([ovs-vsctl add-port int-br v1 -- set Interface v1 type=vxlan \ AT_CHECK([ovs-appctl dpif/show], [0], [dnl dummy@ovs-dummy: hit:0 missed:0 br0: - br0 65534/100: (dummy-internal) - p0 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p0 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) int-br: - int-br 65534/2: (dummy-internal) + int-br 65534/2: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) v1 2/4789: (vxlan: key=123, remote_ip=172.31.1.2) - v2 3/3: (dummy-internal) + v2 3/3: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) ]) dnl First setup dummy interface IP address, then add the route @@ -524,7 +524,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=lisp \ options:remote_ip=1.1.1.1 ofport_request=1]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/4341: (lisp: remote_ip=1.1.1.1) ]) @@ -548,7 +548,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=erspan \ ]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/1: (erspan: erspan_idx=0x0, erspan_ver=1, key=1, remote_ip=1.1.1.1) p2 2/1: (erspan: erspan_idx=flow, erspan_ver=1, key=flow, remote_ip=1.1.1.1) p3 3/1: (erspan: erspan_dir=flow, erspan_hwid=flow, erspan_ver=2, key=10, remote_ip=1.1.1.1) @@ -579,7 +579,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=vxlan \ options:remote_ip=1.1.1.1 ofport_request=1 options:dst_port=4341]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/4341: (vxlan: dst_port=4341, remote_ip=1.1.1.1) ]) @@ -588,7 +588,7 @@ dnl change UDP port AT_CHECK([ovs-vsctl -- set Interface p1 options:dst_port=5000]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/5000: (vxlan: dst_port=5000, remote_ip=1.1.1.1) ]) @@ -597,7 +597,7 @@ dnl change UDP port to default AT_CHECK([ovs-vsctl -- set Interface p1 options:dst_port=4789]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/4789: (vxlan: remote_ip=1.1.1.1) ]) OVS_VSWITCHD_STOP @@ -658,9 +658,9 @@ ovs-vsctl -- add-port br0 p3 \ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) - p2 2/2: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p3 3/3: (erspan: erspan_idx=0x7, erspan_ver=1, key=1, remote_ip=1.1.1.1) p4 4/3: (erspan: erspan_dir=1, erspan_hwid=0x7, erspan_ver=2, key=2, remote_ip=1.1.1.2) ]) @@ -1136,7 +1136,7 @@ OVS_VSWITCHD_START([add-port br0 p1 -- set Interface p1 type=gtpu \ options:key=123 ofport_request=1]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) p1 1/2152: (gtpu: key=123, remote_ip=1.1.1.1) ]) @@ -1172,8 +1172,8 @@ OVS_VSWITCHD_DISABLE_TUNNEL_PUSH_POP dnl AT_CHECK([ovs-appctl dpif/show | tail -n +4], [0], [dnl AT_CHECK([ovs-appctl dpif/show | tail -n +4], [0], [dnl - p1 1/1: (dummy) - p2 2/2: (dummy) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) + p2 2/2: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p3 3/2152: (gtpu: key=3, remote_ip=1.1.1.1) p4 4/2152: (gtpu: key=4, remote_ip=1.1.1.2) ]) @@ -1250,8 +1250,8 @@ in_port=2,actions=1 AT_CHECK([ovs-ofctl add-flows br0 flows.txt]) AT_CHECK([ovs-appctl dpif/show | tail -n +3], [0], [dnl - br0 65534/100: (dummy-internal) - p1 1/1: (dummy) + br0 65534/100: (dummy-internal: ol_ip_csum=false, ol_ip_csum_set_good=false) + p1 1/1: (dummy: ol_ip_csum=false, ol_ip_csum_set_good=false) p2 2/6: (srv6: remote_ip=flow) ]) diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index cfcde34ffed..13c64b61899 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -3386,6 +3386,29 @@ ovs-vsctl add-port br0 p0 -- set Interface p0 type=patch options:peer=p1 \

+ + +

+ Enable IP checksum offload for netdev-dummy device. +

+

+ Note that this option is specific to netdev-dummy. + Defaults to false. +

+
+ + +

+ Flag RX packets for netdev-dummy devices to have good checksums. +

+

+ Note that this option is specific to netdev-dummy. + Defaults to false. +

+
+

Specifies mapping of RX queues of this interface to CPU cores.

Value should be set in the following form:

@@ -3789,6 +3812,18 @@ ovs-vsctl add-port br0 p0 -- set Interface p0 type=patch options:peer=p1 \ Maximum number of VMDq pools.
+ + Number of rx queues. + + + + Number of tx queues. + + + + Whether hardware has support for RX Checksum Offload or not. + + Interface type ID according to IANA ifTYPE MIB definitions. @@ -3797,12 +3832,38 @@ ovs-vsctl add-port br0 p0 -- set Interface p0 type=patch options:peer=p1 \ Interface description string. - - Vendor ID of PCI device. + + Bus name and bus info such as Vendor ID and Device ID of PCI device. + + + + Ethernet address set for this VF interface. Only reported for dpdk + VF representors. + + + + Hardware Rx queue steering policy in use. + + + + ID of rx steering queue. Only reported if rx-steering + is supported by hardware. + + + + IDs of rss queues. Only reported if rx-steering is + supported by hardware. - - Device ID of PCI device. + + + +

+ AF_XDP netdev specific interface status options. +

+ + + XDP mode which was chosen.