[ovs-git] [openvswitch/ovs] d63ca5: dpctl: Properly reflect a rule's offloaded to HW s...

GitHub noreply at github.com
Mon Jun 18 09:28:42 UTC 2018


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: d63ca5329ff97ed47660a8085f5ed2015c409802
      https://github.com/openvswitch/ovs/commit/d63ca5329ff97ed47660a8085f5ed2015c409802
  Author: Gavi Teitz <gavi at mellanox.com>
  Date:   2018-06-18 (Mon, 18 Jun 2018)

  Changed paths:
    M lib/dpctl.c
    M lib/dpctl.man
    M lib/dpif-netlink.c
    M lib/dpif.h
    M lib/flow.h
    M lib/netdev-provider.h
    M lib/netdev-tc-offloads.c
    M lib/netdev-tc-offloads.h
    M lib/netdev.c
    M lib/netdev.h
    M lib/tc.c
    M lib/tc.h

  Log Message:
  -----------
  dpctl: Properly reflect a rule's offloaded to HW state

Previously, any rule that is offloaded via a netdev, not necessarily
to the HW, would be reported as "offloaded". This patch fixes this
misalignment, and introduces the 'dp' state, as follows:

rule is in HW via TC offload  -> offloaded=yes dp:tc
rule is in not HW over TC DP  -> offloaded=no  dp:tc
rule is in not HW over OVS DP -> offloaded=no  dp:ovs

To achieve this, the flows's 'offloaded' flag was encapsulated in a new
attrs struct, which contains the offloaded state of the flow and the
DP layer the flow is handled in, and instead of setting the flow's
'offloaded' state based solely on the type of dump it was acquired
via, for netdev flows it now sends the new attrs struct to be
collected along with the rest of the flow via the netdev, allowing
it to be set per flow.

For TC offloads, the offloaded state is set based on the 'in_hw' and
'not_in_hw' flags received from the TC as part of the flower. If no
such flag was received, due to lack of kernel support, it defaults
to true.

Signed-off-by: Gavi Teitz <gavi at mellanox.com>
Acked-by: Roi Dayan <roid at mellanox.com>
[simon: resolved conflict in lib/dpctl.man]
Signed-off-by: Simon Horman <simon.horman at netronome.com>



      **NOTE:** This service been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.


More information about the git mailing list