From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752647AbdGYPbV (ORCPT ); Tue, 25 Jul 2017 11:31:21 -0400 Received: from mout.kundenserver.de ([217.72.192.73]:51980 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752659AbdGYPbO (ORCPT ); Tue, 25 Jul 2017 11:31:14 -0400 From: Arnd Bergmann To: Michael Chan Cc: Arnd Bergmann , "David S. Miller" , Sathya Perla , Somnath Kotur , Deepak Khungar , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 2/2] bnxt_en: define sriov_lock unconditionally Date: Tue, 25 Jul 2017 17:29:52 +0200 Message-Id: <20170725153046.44726-2-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 In-Reply-To: <20170725153046.44726-1-arnd@arndb.de> References: <20170725153046.44726-1-arnd@arndb.de> X-Provags-ID: V03:K0:Os65ijpUhTV/dIQk3h43VRxQ8qjGW5WAsq0XWXh0lfcy7Zn4XpL 6H4xdXBB6EdFsgu8kTl8yTjPmIO7Jz6Nc59LHKT9NOY/MwnZ2FyTodBlT6hyQiik/PsT9AZ bBpORvEHfP1Kzg+5PM6EyKnIRDsAcqSzwymTFdvt7feTRwr/Pargpa+o6VNVVUcxaOp0qQA AzFaCJTYYF82lOdjncLqA== X-UI-Out-Filterresults: notjunk:1;V01:K0:AuvNwQHHOn4=:f+j1cXXcIIYDKbGjvhJbXw Ar0/Ed+xBC8RT/K3uvhp7rIYPckV57TKolxsEwUGvb23HjUS52HXbZcrLAVj0Gosn3hLBiFDN 2JIVetx428ZEGijaaQUkxDUZclbTCh65qO1gzzJWLL7/9VZGpDifS+zodhxBqEWorf2MF16dy 3eCKUc5OuqhNuTXzXqi6X6tNkF//suS04ih+T/1NqPNS+s+26HFrYYMdGtjJfbJH1JoXz+mVG qVSwRC4sovmnu38kShG0zaAOLJSPvzbvvJRY/sL7ila1VFg75e5uUjjgEvIKNBXDLG4pNpMOt n5YmU7rvQz33a8rorFWIqj+VOLh0040YE1aaAsAQzBAkZPT8ged5IB83bcPnyP+MalMI+10nV 3MtWrePxp27Ndri1b4R72P4GHudO4EoVk0+oSRtwWzeTSAu8akdGcq1G5aM97/+EIi+QtnIn3 9xXk9FVWjNhQ/XWd0rWk4cm9MtmZf6sd35Rf02tNS2hMVPYdaP/8a+RCiYFGYcxLhQVwR4s4Q VNcu7G+JKNynLhgbKUpSySkA6N9o9jzH952oYrxgNdNkuoGBOrJT1E/YJKHvpajUy1cJVxXyE SE2dqBMB1SZuuXUAxj/CIcugqmWIfep349HqWkPh5SZdL0rnXoLTyeF3YFwGoMK9hKOLixMJy OTWP9KQAnDC+PiTZMqQkJ2rIaMyzBRpPZgj0e6L2k84KjP9LInTh5eHdc9ZU7mvBy76ySnyXi /IYm+CFsW/oyL95nab3hMfLu30Dm7WmdY6QZHQ== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The sriov_lock is used to serialize the sriov code with the vfr code. However, when SRIOV is disabled, the lock is not there at all, leading to a build error: drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c: In function 'bnxt_dl_eswitch_mode_set': drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c:410:16: error: 'struct bnxt' has no member named 'sriov_lock' We can either provide the mutex in this configuration, too, or disable both SRIOV and VFR together. This implements the first approach, since it seems like a reasonable configuration for guest kernels to have, and the extra lock will be harmless when there is no contention. Fixes: 4ab0c6a8ffd7 ("bnxt_en: add support to enable VF-representors") Signed-off-by: Arnd Bergmann --- drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +- drivers/net/ethernet/broadcom/bnxt/bnxt.h | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c index 82cbe1804821..9a9f5f394341 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -7949,8 +7949,8 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent) #ifdef CONFIG_BNXT_SRIOV init_waitqueue_head(&bp->sriov_cfg_wait); - mutex_init(&bp->sriov_lock); #endif + mutex_init(&bp->sriov_lock); bp->gro_func = bnxt_gro_func_5730x; if (BNXT_CHIP_P4_PLUS(bp)) bp->gro_func = bnxt_gro_func_5731x; diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h index 2d84d5719b70..a31ef843977a 100644 --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h @@ -1239,13 +1239,12 @@ struct bnxt { wait_queue_head_t sriov_cfg_wait; bool sriov_cfg; #define BNXT_SRIOV_CFG_WAIT_TMO msecs_to_jiffies(10000) - +#endif /* lock to protect VF-rep creation/cleanup via * multiple paths such as ->sriov_configure() and * devlink ->eswitch_mode_set() */ struct mutex sriov_lock; -#endif #define BNXT_NTP_FLTR_MAX_FLTR 4096 #define BNXT_NTP_FLTR_HASH_SIZE 512 -- 2.9.0