[ovs-git] [openvswitch/ovs] be8c4a: netdev-offload-tc: Use nl_msg_put_flag for OVS_TUN...

TomCodeLV noreply at github.com
Thu Jul 1 14:34:51 UTC 2021


  Branch: refs/heads/branch-2.13
  Home:   https://github.com/openvswitch/ovs
  Commit: be8c4af1cef11f5ef1d61c94ffc9dd8a387f3132
      https://github.com/openvswitch/ovs/commit/be8c4af1cef11f5ef1d61c94ffc9dd8a387f3132
  Author: Paolo Valerio <pvalerio at redhat.com>
  Date:   2021-06-30 (Wed, 30 Jun 2021)

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

  Log Message:
  -----------
  netdev-offload-tc: Use nl_msg_put_flag for OVS_TUNNEL_KEY_ATTR_CSUM.

When a tunnel port gets added to the bridge setting the checksum option
to true:

  ovs-vsctl add-port br0 geneve0         \
    -- set interface geneve0 type=geneve \
    options:remote_ip=<remote_ip> options:key=<key> options:csum=true

the flow dump for the outgoing traffic will include a
"bad key length 1 ..." message:

  ovs-appctl dpctl/dump-flows --names -m
  ufid:<>, ..., dp:tc,
  actions:set(tunnel(tun_id=<>,dst=<>,ttl=64,tp_dst=6081,
                     key6(bad key length 1, expected 0)(01)flags(key)))
          ,genev_sys_6081

This is due to a mismatch present between the expected length (zero
for OVS_TUNNEL_KEY_ATTR_CSUM in ovs_tun_key_attr_lens) and the
current one.

With this patch the same flow dump becomes:

  ovs-appctl dpctl/dump-flows --names -m
  ufid:<>, ..., dp:tc,
  actions:set(tunnel(tun_id=<>,dst=<>,ttl=64,tp_dst=6081,
                     flags(csum|key))),genev_sys_6081

Fixes: d9677a1f0eaf ("netdev-tc-offloads: TC csum option is not matched with tunnel configuration")
Suggested-by: Ilya Maximets <i.maximets at ovn.org>
Signed-off-by: Paolo Valerio <pvalerio at redhat.com>
Acked-by: Eelco Chaudron <echaudro at redhat.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 9c386761f99844505055544f46c6513c41737996
      https://github.com/openvswitch/ovs/commit/9c386761f99844505055544f46c6513c41737996
  Author: Paolo Valerio <pvalerio at redhat.com>
  Date:   2021-06-30 (Wed, 30 Jun 2021)

  Changed paths:
    M lib/ovs-actions.xml

  Log Message:
  -----------
  ovs-actions.xml: Add missing bracket.

A bracket is apparently missing in ovs-actions(7).

The patch changes the relevant row from:

  ct(argument]...)

to:

  ct([argument]...)

Signed-off-by: Paolo Valerio <pvalerio at redhat.com>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


  Commit: 76fdda2b34333ef799b01b2745288e49f01c171a
      https://github.com/openvswitch/ovs/commit/76fdda2b34333ef799b01b2745288e49f01c171a
  Author: Toms Atteka <cpp.code.lv at gmail.com>
  Date:   2021-06-30 (Wed, 30 Jun 2021)

  Changed paths:
    M lib/tun-metadata.c
    M tests/system-traffic.at

  Log Message:
  -----------
  netlink: removed incorrect optimization

This optimization caused FLOW_TNL_F_UDPIF flag not to be used in
hash calculation for geneve tunnel when revalidating flows which
resulted in different cache hash values and incorrect behaviour.

Added test to prevent regression.

CC: Jesse Gross <jesse at nicira.com>
Fixes: 6728d578f64e ("dpif-netdev: Translate Geneve options per-flow, not per-packet.")
Reported-at: https://github.com/vmware-tanzu/antrea/issues/897
Signed-off-by: Toms Atteka <cpp.code.lv at gmail.com>
Acked-by: Ansis Atteka <aatteka at ovn.org>
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>


Compare: https://github.com/openvswitch/ovs/compare/15251f0e1d93...76fdda2b3433


More information about the git mailing list