[ovs-git] [openvswitch/ovs] c545bb: datapath: compat: clear skb IPCB block.

GitHub noreply at github.com
Sun Jul 17 17:26:03 UTC 2016


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: c545bb583c3613700095b5ed6d66db0c90c6bdcc
      https://github.com/openvswitch/ovs/commit/c545bb583c3613700095b5ed6d66db0c90c6bdcc
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/linux/compat/gso.h

  Log Message:
  -----------
  datapath: compat: clear skb IPCB block.

OVS compat ip_local_out/ip6_local_out clear out skb IPCB, we also
need to do it for non compat version.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: ae07e30952ea05e796e91e5c97434efb88ad5eca
      https://github.com/openvswitch/ovs/commit/ae07e30952ea05e796e91e5c97434efb88ad5eca
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/linux/compat/gso.c

  Log Message:
  -----------
  datapath: tnl-segmentation: clone dst for each segment.

Each skb segment needs a dst entry.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 8c597e04760b2dcaef264d5e27ca85d1e5b6785e
      https://github.com/openvswitch/ovs/commit/8c597e04760b2dcaef264d5e27ca85d1e5b6785e
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/linux/compat/ip_tunnels_core.c

  Log Message:
  -----------
  datapath: compat: Set OVS-GSO segment handler only for GSO packet.

This simplify OVS compat code where non gso packet can be directly sent
to network stack.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: a5d59bf35e1513d0442378c27cca189d49303183
      https://github.com/openvswitch/ovs/commit/a5d59bf35e1513d0442378c27cca189d49303183
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/linux/compat/geneve.c
    M datapath/linux/compat/include/net/dst_metadata.h
    M datapath/linux/compat/include/net/udp_tunnel.h
    M datapath/linux/compat/ip_gre.c
    M datapath/linux/compat/lisp.c
    M datapath/linux/compat/stt.c
    M datapath/linux/compat/vxlan.c

  Log Message:
  -----------
  datapath: compat: reset md_dst on recieve.

On transmit metadata dst is cleared, do same on recieve.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: ea3acd7a9cbf8a46ded6f77b30d6eadf997b953f
      https://github.com/openvswitch/ovs/commit/ea3acd7a9cbf8a46ded6f77b30d6eadf997b953f
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M acinclude.m4
    M datapath/actions.c
    M datapath/linux/compat/include/linux/skbuff.h
    M datapath/vport-netdev.c
    M datapath/vport.h

  Log Message:
  -----------
  datapath: Use skb_postpush_rcsum()

Use kernel function to update checksum.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: e9326797e5146a066432bdfa51498ec9992cf376
      https://github.com/openvswitch/ovs/commit/e9326797e5146a066432bdfa51498ec9992cf376
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/actions.c
    M datapath/linux/compat/include/linux/percpu.h

  Log Message:
  -----------
  datapath: remove get_pcpu_ptr

There is no need to support old kernel so now we can use
newer api to access per cpu data.

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: a6a8674dcd4cc0d4a3c85379b61719cdba415355
      https://github.com/openvswitch/ovs/commit/a6a8674dcd4cc0d4a3c85379b61719cdba415355
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/datapath.c
    M datapath/linux/Modules.mk
    A datapath/linux/compat/include/linux/genetlink.h

  Log Message:
  -----------
  datapath: backport: openvswitch: allow management from inside user namespaces

Upstream commit:
    commit 4a92602aa1cd5bbaeedbd9536ff992f7d26fe9d1
    Author: Tycho Andersen <tycho.andersen at canonical.com>

    openvswitch: allow management from inside user namespaces

    Operations with the GENL_ADMIN_PERM flag fail permissions checks because
    this flag means we call netlink_capable, which uses the init user ns.

    Instead, let's introduce a new flag, GENL_UNS_ADMIN_PERM for operations
    which should be allowed inside a user namespace.

    The motivation for this is to be able to run openvswitch in unprivileged
    containers. I've tested this and it seems to work, but I really have no
    idea about the security consequences of this patch, so thoughts would be
    much appreciated.

    v2: use the GENL_UNS_ADMIN_PERM flag instead of a check in each function
    v3: use separate ifs for UNS_ADMIN_PERM and ADMIN_PERM, instead of one
  massive one

    Reported-by: James Page <james.page at canonical.com>
    Signed-off-by: Tycho Andersen <tycho.andersen at canonical.com>
    CC: Eric Biederman <ebiederm at xmission.com>
    CC: Pravin Shelar <pshelar at ovn.org>
    CC: Justin Pettit <jpettit at ovn.org>
    CC: "David S. Miller" <davem at davemloft.net>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: b17b330bd2e0e6519a35e32d3f8a0731cb41f7e3
      https://github.com/openvswitch/ovs/commit/b17b330bd2e0e6519a35e32d3f8a0731cb41f7e3
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/flow.c

  Log Message:
  -----------
  datapath: backport: retain parsed IPv6 header fields in flow on error skipping extension headers

Upstream commit:
    commit c30da497893718abc6cec4f1d34d35875200edee
    Author: Simon Horman <simon.horman at netronome.com>

    openvswitch: retain parsed IPv6 header fields in flow on error skipping extension headers

    When an error occurs skipping IPv6 extension headers retain the already
    parsed IP protocol and IPv6 addresses in the flow. Also assume that the
    packet is not a fragment in the absence of information to the contrary;
    that is always use the frag_off value set by ipv6_skip_exthdr().

    This allows matching on the IP protocol and IPv6 addresses of packets
    with malformed extension headers.

    Signed-off-by: Simon Horman <simon.horman at netronome.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: b24baa1ab87bed7e46aa29f7ac28a59b770a7d1b
      https://github.com/openvswitch/ovs/commit/b24baa1ab87bed7e46aa29f7ac28a59b770a7d1b
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/datapath.c

  Log Message:
  -----------
  datapath: backport: ovs: allow nl 'flow set' to use ufid without flow key

Upstream commit:
    commit 6f15cdbf8a8ac2e22767cc8b1eae225702733c95
    Author: Samuel Gauthier <samuel.gauthier at 6wind.com>

    ovs: allow nl 'flow set' to use ufid without flow key

    When we want to change a flow using netlink, we have to identify it to
    be able to perform a lookup. Both the flow key and unique flow ID
    (ufid) are valid identifiers, but we always have to specify the flow
    key in the netlink message. When both attributes are there, the ufid
    is used. The flow key is used to validate the actions provided by
    the userland.

    This commit allows to use the ufid without having to provide the flow
    key, as it is already done in the netlink 'flow get' and 'flow del'
    path. The flow key remains mandatory when an action is provided.

    Signed-off-by: Samuel Gauthier <samuel.gauthier at 6wind.com>
    Reviewed-by: Simon Horman <simon.horman at netronome.com>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 91b376476b0cca4d63d1fac1ed1dccfe1df23040
      https://github.com/openvswitch/ovs/commit/91b376476b0cca4d63d1fac1ed1dccfe1df23040
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M acinclude.m4
    M datapath/datapath.c
    M datapath/linux/compat/include/linux/openvswitch.h
    M datapath/linux/compat/include/net/netlink.h
    M datapath/linux/compat/utils.c

  Log Message:
  -----------
  datapath: backport: ovs: align nlattr properly when needed

Upstream commit:
    commit 66c7a5ee1a6b7c69d41dfd68d207fdd54efba56a
    Author: Nicolas Dichtel <nicolas.dichtel at 6wind.com>

    ovs: align nlattr properly when needed

    I also fix commit 8b32ab9e6ef1: use nla_total_size_64bit() for
    OVS_FLOW_ATTR_USED in ovs_flow_cmd_msg_size().

    Fixes: 8b32ab9e6ef1 ("ovs: use nla_put_u64_64bit()")
    Signed-off-by: Nicolas Dichtel <nicolas.dichtel at 6wind.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 89be7da8d739a36d0d10d1bd53743068143c6f8a
      https://github.com/openvswitch/ovs/commit/89be7da8d739a36d0d10d1bd53743068143c6f8a
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/datapath.c
    M datapath/linux/compat/include/net/netlink.h

  Log Message:
  -----------
  datapath: backport: ovs: use nla_put_u64_64bit()

Upstream commit:

    commit 0238b7204b7ff1bad1d2d4489f010d670cbd89f2
    Author: Nicolas Dichtel <nicolas.dichtel at 6wind.com>

    ovs: use nla_put_u64_64bit()

    Signed-off-by: Nicolas Dichtel <nicolas.dichtel at 6wind.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 8ce3733975d3c55368c03a81f3f58e35875a6507
      https://github.com/openvswitch/ovs/commit/8ce3733975d3c55368c03a81f3f58e35875a6507
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M acinclude.m4
    M datapath/datapath.c
    M datapath/datapath.h
    M datapath/linux/compat/include/linux/netdevice.h
    M datapath/vport-internal_dev.c

  Log Message:
  -----------
  datapath: backport: ovs: propagate per dp max headroom to all vports

Upstream commit:
    commit 3a927bc7cf9d0fbe8f4a8189dd5f8440228f64e7
    Author: Paolo Abeni <pabeni at redhat.com>

    ovs: propagate per dp max headroom to all vports

    This patch implements bookkeeping support to compute the maximum
    headroom for all the devices in each datapath. When said value
    changes, the underlying devs are notified via the
    ndo_set_rx_headroom method.

    This also increases the internal vports xmit performance.

    Signed-off-by: Paolo Abeni <pabeni at redhat.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: f34648187b033ee9225d72b3603d9c01d0afa2fc
      https://github.com/openvswitch/ovs/commit/f34648187b033ee9225d72b3603d9c01d0afa2fc
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/flow_netlink.c
    M datapath/linux/compat/include/linux/openvswitch.h
    M datapath/linux/compat/include/net/netlink.h
    M lib/odp-util.c

  Log Message:
  -----------
  datapath: backport: libnl: nla_put_be64(): align on a 64-bit area

Upstream commit:
    commit b46f6ded906ef0be52a4881ba50a084aeca64d7e
    Author: Nicolas Dichtel <nicolas.dichtel at 6wind.com>

    libnl: nla_put_be64(): align on a 64-bit area

    nla_data() is now aligned on a 64-bit area.

    A temporary version (nla_put_be64_32bit()) is added for nla_put_net64().
    This function is removed in the next patch.

    Signed-off-by: Nicolas Dichtel <nicolas.dichtel at 6wind.com>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 54125dd05962cf87ef5d19729d1111c244455cf6
      https://github.com/openvswitch/ovs/commit/54125dd05962cf87ef5d19729d1111c244455cf6
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M acinclude.m4
    M datapath/flow_netlink.c
    M datapath/linux/compat/include/linux/err.h

  Log Message:
  -----------
  datapath: use PTR_ERR_OR_ZERO

Upstream commit:
    commit f35423c137b0e64155f52c166db1d13834a551f2
    Author: Fabian Frederick <fabf at skynet.be>

    openvswitch: use PTR_ERR_OR_ZERO

    Signed-off-by: Fabian Frederick <fabf at skynet.be>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 2250cb8b4fc4d25e97e1bd609a0e380dab73ab22
      https://github.com/openvswitch/ovs/commit/2250cb8b4fc4d25e97e1bd609a0e380dab73ab22
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/flow.c
    M datapath/flow_netlink.c

  Log Message:
  -----------
  datapath: Move key memset to ovs_flow_key_extract_userspace()

Synchronize code with upstream ovs_nla_get_flow_metadata().

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 96e72484ee7ff811b47bc765535fea729bfef83a
      https://github.com/openvswitch/ovs/commit/96e72484ee7ff811b47bc765535fea729bfef83a
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/flow_table.c

  Log Message:
  -----------
  datapath: backport: ovs: do not allocate memory from offline numa node

Upstream commit:
    commit 598c12d0ba6de9060f04999746eb1e015774044b
    Author: Konstantin Khlebnikov <khlebnikov at yandex-team.ru>

    ovs: do not allocate memory from offline numa node

    When openvswitch tries allocate memory from offline numa node 0:
    stats = kmem_cache_alloc_node(flow_stats_cache, GFP_KERNEL | __GFP_ZERO, 0)
    It catches VM_BUG_ON(nid < 0 || nid >= MAX_NUMNODES || !node_online(nid))
    [ replaced with VM_WARN_ON(!node_online(nid)) recently ] in linux/gfp.h
    This patch disables numa affinity in this case.

    Signed-off-by: Konstantin Khlebnikov <khlebnikov at yandex-team.ru>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 60434d0d933ce7171805b0e3612befb3c723d06c
      https://github.com/openvswitch/ovs/commit/60434d0d933ce7171805b0e3612befb3c723d06c
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/vport-internal_dev.c

  Log Message:
  -----------
  datapath: backport: ovs: set name assign type of internal port

upstream commit:
    commit 684ff4ef5edd758c47929b852b4ea79be56f8bc0
    Author: Zhang Shengju <zhangshengju at cmss.chinamobile.com>

    ovs: set name assign type of internal port

    Set name_assign_type of internal port to NET_NAME_USER.

    Signed-off-by: Zhang Shengju <zhangshengju at cmss.chinamobile.com>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: 6089e1d8429904d98ed682754a6f8802d724d759
      https://github.com/openvswitch/ovs/commit/6089e1d8429904d98ed682754a6f8802d724d759
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/linux/compat/include/linux/netdevice.h
    M datapath/vport-internal_dev.c

  Log Message:
  -----------
  datapath: internal-dev: set IFF_NO_QUEUE

Introduced by upstream commit 4272cc51a6d ("openvswitch: Convert to
using IFF_NO_QUEUE").

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: c1eb18c44daba87d62ed2ac5cfd99d0871c8a4f0
      https://github.com/openvswitch/ovs/commit/c1eb18c44daba87d62ed2ac5cfd99d0871c8a4f0
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/vport-vxlan.c

  Log Message:
  -----------
  datapath: vxlan: enable zero checksum on recv.

partialy backport commit c868ee7063bdb5 ("lwt: fix rx checksum setting
for lwt devices tunneling over ipv6").

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: b51367aad315985c3d6cf7782bb72438e3b270d8
      https://github.com/openvswitch/ovs/commit/b51367aad315985c3d6cf7782bb72438e3b270d8
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/actions.c

  Log Message:
  -----------
  datapath: openvswitch: update checksum in {push,pop}_mpls

Upstream commit:
    commit bc7cc5999fd392cc799630d7e375b2f4e29cc398
    Author: Simon Horman <simon.horman at netronome.com>

    openvswitch: update checksum in {push,pop}_mpls

    In the case of CHECKSUM_COMPLETE the skb checksum should be updated in
    {push,pop}_mpls() as they the type in the ethernet header.

    As suggested by Pravin Shelar.

    Cc: Pravin Shelar <pshelar at ovn.org>
    Fixes: 25cd9ba0abc0 ("openvswitch: Add basic MPLS support to kernel")
    Signed-off-by: Simon Horman <simon.horman at netronome.com>
    Acked-by: Pravin B Shelar <pshelar at ovn.org>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


  Commit: bdcbce89d390107f43f550c010a79cdee352c3ca
      https://github.com/openvswitch/ovs/commit/bdcbce89d390107f43f550c010a79cdee352c3ca
  Author: Pravin B Shelar <pshelar at ovn.org>
  Date:   2016-07-17 (Sun, 17 Jul 2016)

  Changed paths:
    M datapath/flow_netlink.c
    M datapath/flow_table.c

  Log Message:
  -----------
  datapath: Check for flow key tunnel proto to detect tunnel.

This brings in missing hunks from upstream commit 00a93babd06aaa
("openvswitch: add tunnel protocol to sw_flow_key").

Signed-off-by: Pravin B Shelar <pshelar at ovn.org>
Acked-by: Jesse Gross <jesse at kernel.org>


Compare: https://github.com/openvswitch/ovs/compare/06c58061d485...bdcbce89d390


More information about the git mailing list