[ovs-git] [openvswitch/ovs] 9c77ff: datapath: disable LRO

GitHub noreply at github.com
Tue Aug 18 00:10:45 UTC 2015


  Branch: refs/heads/branch-2.4
  Home:   https://github.com/openvswitch/ovs
  Commit: 9c77ffe83cdaf1ea9c991dbec6f788ce2252526e
      https://github.com/openvswitch/ovs/commit/9c77ffe83cdaf1ea9c991dbec6f788ce2252526e
  Author: Jiri Benc <jbenc at redhat.com>
  Date:   2015-08-17 (Mon, 17 Aug 2015)

  Changed paths:
    M datapath/vport-netdev.c

  Log Message:
  -----------
  datapath: disable LRO

Currently, openvswitch tries to disable LRO from the user space. This does
not work correctly when the device added is a vlan interface, though.
Instead of dealing with possibly complex stacked cross name space relations
in the user space, do the same as bridging does and call dev_disable_lro in
the kernel.

Signed-off-by: Jiri Benc <jbenc at redhat.com>
Acked-by: Flavio Leitner <fbl at redhat.com>
Acked-by: Pravin B Shelar <pshelar at nicira.com>
Signed-off-by: David S. Miller <davem at davemloft.net>

Upstream: 640b2b107c ("openvswitch: disable LRO").

Signed-off-by: Pravin B Shelar <pshelar at nicira.com>


  Commit: 7148fd9c1c3d4e0300cd9b90d00c15b263ba144b
      https://github.com/openvswitch/ovs/commit/7148fd9c1c3d4e0300cd9b90d00c15b263ba144b
  Author: Chris J Arges <chris.j.arges at canonical.com>
  Date:   2015-08-17 (Mon, 17 Aug 2015)

  Changed paths:
    M datapath/flow_table.c

  Log Message:
  -----------
  datapath: allocate nr_node_ids flow_stats instead of num_possible_nodes

Some architectures like POWER can have a NUMA node_possible_map that
contains sparse entries. This causes memory corruption with openvswitch
since it allocates flow_cache with a multiple of num_possible_nodes() and
assumes the node variable returned by for_each_node will index into
flow->stats[node].

Use nr_node_ids to allocate a maximal sparse array instead of
num_possible_nodes().

The crash was noticed after 3af229f2 was applied as it changed the
node_possible_map to match node_online_map on boot.
Fixes: 3af229f2071f5b5cb31664be6109561fbe19c861

Signed-off-by: Chris J Arges <chris.j.arges at canonical.com>
Acked-by: Pravin B Shelar <pshelar at nicira.com>
Acked-by: Nishanth Aravamudan <nacc at linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem at davemloft.net>

Upstream: bac541e4631 ("openvswitch: allocate nr_node_ids flow_stats
instead of num_possible_nodes")

Signed-off-by: Pravin B Shelar <pshelar at nicira.com>


  Commit: 000fcbdb8c4760ffc25be87e515441f3b72b095b
      https://github.com/openvswitch/ovs/commit/000fcbdb8c4760ffc25be87e515441f3b72b095b
  Author: Glenn Griffin <ggriffin.kernel at gmail.com>
  Date:   2015-08-17 (Mon, 17 Aug 2015)

  Changed paths:
    M datapath/actions.c

  Log Message:
  -----------
  datapath: Fix L4 checksum handling when dealing with IP fragments

openvswitch modifies the L4 checksum of a packet when modifying
the ip address. When an IP packet is fragmented only the first
fragment contains an L4 header and checksum. Prior to this change
openvswitch would modify all fragments, modifying application data
in non-first fragments, causing checksum failures in the
reassembled packet.

Signed-off-by: Glenn Griffin <ggriffin.kernel at gmail.com>
Acked-by: Pravin B Shelar <pshelar at nicira.com>
Signed-off-by: David S. Miller <davem at davemloft.net>

Upstream: 3576fd794b3 ("openvswitch: Fix L4 checksum handling when
dealing with IP fragments").

Signed-off-by: Pravin B Shelar <pshelar at nicira.com>


Compare: https://github.com/openvswitch/ovs/compare/f8fe60beb18e...000fcbdb8c47


More information about the git mailing list