[ovs-git] [openvswitch/ovs] d8ad17: netdev-offload-dpdk: Log testpmd format for flow c...

elibritstein noreply at github.com
Wed Jul 8 17:16:50 UTC 2020


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: d8ad173fb9c1a49119f52285d53f481994b76f49
      https://github.com/openvswitch/ovs/commit/d8ad173fb9c1a49119f52285d53f481994b76f49
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Log testpmd format for flow create/destroy.

To enhance debugability with DPDK, format the logs in a testpmd format
commands.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 9ac365a8edd02934fed259108ec31c114d75f9f1
      https://github.com/openvswitch/ovs/commit/9ac365a8edd02934fed259108ec31c114d75f9f1
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/dpif-netdev.c
    M tests/dpif-netdev.at
    M tests/ofproto-macros.at

  Log Message:
  -----------
  dpif-netdev: Add mega ufid in flow add/del log.

As offload is done using the mega ufid of a flow, for better
debugability, add it in the log message.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 77057965cb36dffd38829efccd2ff2eac8d444d2
      https://github.com/openvswitch/ovs/commit/77057965cb36dffd38829efccd2ff2eac8d444d2
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/dpif-netdev.c
    M tests/dpif-netdev.at

  Log Message:
  -----------
  dpif-netdev: Don't use zero flow mark.

Zero flow mark is used to indicate the HW to remove the mark. A packet
marked with zero mark is received in SW without a mark at all, so it
cannot be used as a valid mark. Change the pool range to fix it.

Fixes: 241bad15d99a ("dpif-netdev: associate flow with a mark id")
Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 864852a0624a25953ab015cc82b784595b03f33f
      https://github.com/openvswitch/ovs/commit/864852a0624a25953ab015cc82b784595b03f33f
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Fix Ethernet matching for type only.

For OVS rule of the form "eth type is 0x1234 / end", rule is offloaded
in the form of "eth / end", which is incorrect. Fix it.

Fixes: e8a2b5bf92bb ("netdev-dpdk: implement flow offload with rte flow")
Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 07ac8f6a5a44948786b2e6630663b05ccb4a3d11
      https://github.com/openvswitch/ovs/commit/07ac8f6a5a44948786b2e6630663b05ccb4a3d11
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Support partial TCP/UDP port matching.

The cited commit failed partial matching of TCP/UDP port matching,
preventing such offload of supporting HWs. Remove this failure.

Fixes: e8a2b5bf92bb ("netdev-dpdk: implement flow offload with rte flow")
Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: a79eae87abe4031353c10f775e1948b4a2c820c3
      https://github.com/openvswitch/ovs/commit/a79eae87abe4031353c10f775e1948b4a2c820c3
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Remove pre-validate of patterns function.

The function of adding patterns by requested matches checks that it
consumed all the required matches, and err if not. For functional
purpose there is no need for pre-validation. For performance such
validation may decrease the time spent for failing flows, but at the
expense of increasing the time spent for the good flows, and code
complexity. Remove the pre-validation function.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 85270e99630530300e579ebd3d52b3a11ffbe2bc
      https://github.com/openvswitch/ovs/commit/85270e99630530300e579ebd3d52b3a11ffbe2bc
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M Documentation/howto/dpdk.rst
    M NEWS
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Add IPv6 pattern matching.

Add support for IPv6 pattern matching for offloading flows.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: b6207b1d2711933cb4c4f03d6ac91f4a7da71912
      https://github.com/openvswitch/ovs/commit/b6207b1d2711933cb4c4f03d6ac91f4a7da71912
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M Documentation/howto/dpdk.rst
    M NEWS
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Support offload of set IPv6 actions.

Add support for set IPv6 actions.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 48c1ab5d74ece8d2e6dd332bfebd3a7adce9414b
      https://github.com/openvswitch/ovs/commit/48c1ab5d74ece8d2e6dd332bfebd3a7adce9414b
  Author: Ilya Maximets <i.maximets at ovn.org>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-provider.h
    M lib/netdev.c
    M lib/netdev.h

  Log Message:
  -----------
  netdev: Allow storing dpif type into netdev structure.

Storing of the dpif type of the owning datapath interface will allow
us to easily distinguish, for example, userspace tunneling ports from
the system ones.  This is required in terms of HW offloading to avoid
offloading of userspace flows to kernel interfaces that doesn't belong
to userspace datapath, but have same dpif_port names.

Acked-by: Eli Britstein <elibr at mellanox.com>
Acked-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Ophir Munk <ophirmu at mellanox.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 8842fdf1b318e626ab24025aaa285461d51a1621
      https://github.com/openvswitch/ovs/commit/8842fdf1b318e626ab24025aaa285461d51a1621
  Author: Ilya Maximets <i.maximets at ovn.org>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/dpif-netdev.c
    M lib/dpif-netlink.c
    M lib/dpif.c
    M lib/netdev-offload-dpdk.c
    M lib/netdev-offload-tc.c
    M lib/netdev-offload.c
    M lib/netdev-offload.h
    M ofproto/ofproto-dpif-upcall.c

  Log Message:
  -----------
  netdev-offload: Use dpif type instead of class.

There is no real difference between the 'class' and 'type' in the
context of common lookup operations inside netdev-offload module
because it only checks the value of pointers without using the
value itself.  However, 'type' has some meaning and can be used by
offload provides on the initialization phase to check if this type
of Flow API in pair with the netdev type could be used in particular
datapath type.  For example, this is needed to check if Linux flow
API could be used for current tunneling vport because it could be
used only if tunneling vport belongs to system datapath, i.e. has
backing linux interface.

This is needed to unblock tunneling offloads in userspace datapath
with DPDK flow API.

Acked-by: Eli Britstein <elibr at mellanox.com>
Acked-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Ophir Munk <ophirmu at mellanox.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 6571965bdfd9d8055a04d97728130adce704750a
      https://github.com/openvswitch/ovs/commit/6571965bdfd9d8055a04d97728130adce704750a
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M Documentation/howto/dpdk.rst
    M NEWS
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Support offload of clone tnl_push/output actions.

Tunnel encapsulation is done by tnl_push and output actions nested in a
clone action. Support offloading of such flows with
RTE_FLOW_ACTION_TYPE_RAW_ENCAP attribute.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Oz Shlomo <ozsh at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 4e432d6f8128a03687a669ce3fc4ffd8cb7d855c
      https://github.com/openvswitch/ovs/commit/4e432d6f8128a03687a669ce3fc4ffd8cb7d855c
  Author: Eli Britstein <elibr at mellanox.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M lib/netdev-offload-dpdk.c

  Log Message:
  -----------
  netdev-offload-dpdk: Support tnl/push using vxlan encap attribute.

For DPDK, there is the RAW_ENCAP attribute which gets raw buffer of the
encapsulation header. For specific protocol, such as vxlan, there is a
more specific attribute, VXLAN_ENCAP, which gets the parsed fields of
the outer header. In case tunnel type is vxlan, parse the header
and use the specific attribute, with fallback to RAW_ENCAP.

Signed-off-by: Eli Britstein <elibr at mellanox.com>
Reviewed-by: Roni Bar Yanai <roniba at mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna at broadcom.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


Compare: https://github.com/openvswitch/ovs/compare/002682727e6e...4e432d6f8128


More information about the git mailing list