From patchwork Mon Jan 29 22:54:28 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gregory Rose X-Patchwork-Id: 867346 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="QQ6KURq8"; dkim-atps=neutral Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zVlFZ5GZ3z9s7n for ; Tue, 30 Jan 2018 09:54:42 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 492A3EB2; Mon, 29 Jan 2018 22:54:41 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id C3EFEEA1 for ; Mon, 29 Jan 2018 22:54:39 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-pf0-f195.google.com (mail-pf0-f195.google.com [209.85.192.195]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 623471CE for ; Mon, 29 Jan 2018 22:54:39 +0000 (UTC) Received: by mail-pf0-f195.google.com with SMTP id p1so6792455pfh.4 for ; Mon, 29 Jan 2018 14:54:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=itJEjix1S6jHlqBref7rhz5IZXoReuqLnxI1sIjiC08=; b=QQ6KURq8/syKRhPsqwiVakiUL1aid1QqeRSSVKPhDKbd4XWVSFXqwmsY6Emaximy81 6m4qqpx0lbYiV72FcJRJbf5DgICxOqmLdl76UpUwq4FunjJNmTpg8aN8TMZQCSMRXGMh Rzwwlno04ny+yHXmNmjPouJrjNsnnbr4TnLNNDPkPs6Hve7+80LSez1nQ9rER+yrs/QA lF3kc2tH2+THLtO/kWC0Og6qs3wrAW306z2ZEYBbGciSzK5/UhhJtOx2A8Y+zw3ZnKPE oJSWduLMMC8/5fwGrfMR/ToCaQjOftoUio/B16YUL7+sbfv76vf+3+3UQ9FfY33G3VrQ 5i5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=itJEjix1S6jHlqBref7rhz5IZXoReuqLnxI1sIjiC08=; b=TUskkOp+1YcBbo14rOiR72kpoHF2wRPmZ1zYueuBesORvGwdXi5zMnL8MSe5c53ag9 E0/9KwZyAm6YzvSg9ENY/EwdxAQjuSuubDWJwN8BszoLFzZXs9dkRmp1kngTZBq9Jjgf JGSZhGwyh65bfBpHwYXQlOjarT8F1VtOBuNjS90XCsE+F0pd7y3fI7LpSO3lgPeUvr36 k//fuQGjXK6p3ZQcu75SxOcxQ55KhMhcbJ2IVUSlum3WEakwFAmr61qrw8ol4DWigSgE bRtSC46GZW4dHTb5Cu5kZbIBoKoBZ817H+gnIt/tdZPhi/uyb5ekva1JKausi5OYfEXY f3QQ== X-Gm-Message-State: AKwxytcHRoa8ntLlsBbm7dXtZeduDCt+H4nEBVwcdvBtfugFF7T5YQVs 9pEcPjKqG2TQpEoI96ZTceL/BQ== X-Google-Smtp-Source: AH8x224ZoFVBWQD7MDVJeSbIxPdFzhgrOTXzJ5BarHMG4gd0rqVURaL6UPjV24Dn4M2ipDpJpTqArw== X-Received: by 10.101.76.199 with SMTP id n7mr22243722pgt.388.1517266478523; Mon, 29 Jan 2018 14:54:38 -0800 (PST) Received: from gizo.domain (184-100-240-187.ptld.qwest.net. [184.100.240.187]) by smtp.gmail.com with ESMTPSA id k13sm32736384pfj.38.2018.01.29.14.54.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 29 Jan 2018 14:54:37 -0800 (PST) From: Greg Rose To: dev@openvswitch.org Date: Mon, 29 Jan 2018 14:54:28 -0800 Message-Id: <1517266474-7609-1-git-send-email-gvrose8192@gmail.com> X-Mailer: git-send-email 1.8.3.1 X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE autolearn=no version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCH V2 1/7] datapath: Fix netdev_master_upper_dev_link for 4.14 X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org An extended netlink ack has been added for 4.14 - add compat layer changes so that it compiles for all kernels up to and including 4.14. Signed-off-by: Greg Rose --- acinclude.m4 | 3 +++ datapath/linux/compat/include/linux/netdevice.h | 15 ++++++++++++++- datapath/vport-netdev.c | 9 ++++++++- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index c04c2c6..768c20c 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -795,6 +795,9 @@ AC_DEFUN([OVS_CHECK_LINUX_COMPAT], [ [OVS_DEFINE([HAVE_LIST_IN_NF_HOOK_OPS])]) OVS_GREP_IFELSE([$KSRC/include/uapi/linux/netfilter/nf_conntrack_common.h], [IP_CT_UNTRACKED]) + OVS_FIND_PARAM_IFELSE([$KSRC/include/linux/netdevice.h], + [netdev_master_upper_dev_link], [extack], + [OVS_DEFINE([HAVE_UPPER_DEV_LINK_EXTACK])]) if cmp -s datapath/linux/kcompat.h.new \ datapath/linux/kcompat.h >/dev/null 2>&1; then diff --git a/datapath/linux/compat/include/linux/netdevice.h b/datapath/linux/compat/include/linux/netdevice.h index 3c3cf42..c460332 100644 --- a/datapath/linux/compat/include/linux/netdevice.h +++ b/datapath/linux/compat/include/linux/netdevice.h @@ -101,13 +101,26 @@ static inline bool netif_needs_gso(struct sk_buff *skb, #ifndef HAVE_NETDEV_MASTER_UPPER_DEV_LINK_RH static inline int rpl_netdev_master_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, - void *upper_priv, void *upper_info) + void *upper_priv, + void *upper_info, void *extack) { return netdev_master_upper_dev_link(dev, upper_dev); } #define netdev_master_upper_dev_link rpl_netdev_master_upper_dev_link #endif +#else +#ifndef HAVE_UPPER_DEV_LINK_EXTACK +static inline int rpl_netdev_master_upper_dev_link(struct net_device *dev, + struct net_device *upper_dev, + void *upper_priv, + void *upper_info, void *extack) +{ + return netdev_master_upper_dev_link(dev, upper_dev, upper_priv, + upper_info); +} +#define netdev_master_upper_dev_link rpl_netdev_master_upper_dev_link +#endif #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(3,16,0) diff --git a/datapath/vport-netdev.c b/datapath/vport-netdev.c index 697c442..e2d8eaf 100644 --- a/datapath/vport-netdev.c +++ b/datapath/vport-netdev.c @@ -112,8 +112,15 @@ struct vport *ovs_netdev_link(struct vport *vport, const char *name) } rtnl_lock(); +#ifdef HAVE_NETDEV_MASTER_UPPER_DEV_LINK_RH err = netdev_master_upper_dev_link(vport->dev, - get_dpdev(vport->dp), NULL, NULL); + get_dpdev(vport->dp), + NULL, NULL); +#else + err = netdev_master_upper_dev_link(vport->dev, + get_dpdev(vport->dp), + NULL, NULL, NULL); +#endif if (err) goto error_unlock;