From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4A21AA0093 for ; Thu, 28 May 2020 18:26:05 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4296A1DC10; Thu, 28 May 2020 18:26:05 +0200 (CEST) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [207.211.31.120]) by dpdk.org (Postfix) with ESMTP id 1EA111DC10 for ; Thu, 28 May 2020 18:26:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1590683163; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=7D/qKL8UCvsz2W3gsqUTYFu43tmx/MJ0HGAGySs9Nm4=; b=P9GXlLwB4OoDo70k1bjFQP0csWm+pZahgfz4IfiyjHAKf+5l3uJvfdVov4iwg5XEq3zmdc 5e6DOiGGZsMyeeqx61hDRnOD/8ldVQu04DY/1glyKhIQ0Bagw7+qN4/UbyNRJn8qXg0J0Z guNQgkbnUlCaKpbBUDrr/6RUa88FDjY= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-143-R-mAhI6SMCu5AwHVfcpZcQ-1; Thu, 28 May 2020 12:25:59 -0400 X-MC-Unique: R-mAhI6SMCu5AwHVfcpZcQ-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 8E03618FE860; Thu, 28 May 2020 16:25:58 +0000 (UTC) Received: from rh.redhat.com (unknown [10.33.36.235]) by smtp.corp.redhat.com (Postfix) with ESMTP id A8D3060C87; Thu, 28 May 2020 16:25:57 +0000 (UTC) From: Kevin Traynor To: Thomas Monjalon Cc: Matan Azrad , dpdk stable Date: Thu, 28 May 2020 17:23:04 +0100 Message-Id: <20200528162322.7863-77-ktraynor@redhat.com> In-Reply-To: <20200528162322.7863-1-ktraynor@redhat.com> References: <20200528162322.7863-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/mlx4: fix build with -fno-common' has been queued to LTS release 18.11.9 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/03/20. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable-queue This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable-queue/commit/f808ec01666ecaad192730349ebb5080bdac5967 Thanks. Kevin. --- >From f808ec01666ecaad192730349ebb5080bdac5967 Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Wed, 8 Apr 2020 02:09:00 +0200 Subject: [PATCH] net/mlx4: fix build with -fno-common [ upstream commit a5e5af7f20b4106b68eeedf83daada0371b83918 ] The variable storages of the same name are merged together if compiled with -fcommon. This is the default. This default behaviour allows to declare a variable in a header file and share the variable in every .o binaries thanks to merge at link-time. In the case of dlopen linking of the glue library, the pointer mlx4_glue is referencing the glue functions struct and is set after calling dlopen. If compiling with -fno-common (default in GCC 10), the variables must be declared as extern to avoid multiple re-definitions. In case the glue layer is split in glue library, the variable mlx4_glue needs to have its own storage for the rest of the PMD. Signed-off-by: Thomas Monjalon Acked-by: Matan Azrad --- drivers/net/mlx4/mlx4.c | 4 ++++ drivers/net/mlx4/mlx4_glue.h | 2 +- drivers/net/mlx4/mlx4_rxtx.h | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index 4428edf108..975df9b747 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/mlx4.c @@ -49,4 +49,8 @@ #include "mlx4_utils.h" +#ifdef MLX4_GLUE +const struct mlx4_glue *mlx4_glue; +#endif + struct mlx4_dev_list mlx4_mem_event_cb_list = LIST_HEAD_INITIALIZER(mlx4_mem_event_cb_list); diff --git a/drivers/net/mlx4/mlx4_glue.h b/drivers/net/mlx4/mlx4_glue.h index 668ca86700..5d9e985495 100644 --- a/drivers/net/mlx4/mlx4_glue.h +++ b/drivers/net/mlx4/mlx4_glue.h @@ -85,5 +85,5 @@ struct mlx4_glue { }; -const struct mlx4_glue *mlx4_glue; +extern const struct mlx4_glue *mlx4_glue; #endif /* MLX4_GLUE_H_ */ diff --git a/drivers/net/mlx4/mlx4_rxtx.h b/drivers/net/mlx4/mlx4_rxtx.h index 29389f1ea7..baf0cd73a8 100644 --- a/drivers/net/mlx4/mlx4_rxtx.h +++ b/drivers/net/mlx4/mlx4_rxtx.h @@ -121,5 +121,5 @@ struct txq { /* mlx4_rxq.c */ -uint8_t mlx4_rss_hash_key_default[MLX4_RSS_HASH_KEY_SIZE]; +extern uint8_t mlx4_rss_hash_key_default[MLX4_RSS_HASH_KEY_SIZE]; int mlx4_rss_init(struct mlx4_priv *priv); void mlx4_rss_deinit(struct mlx4_priv *priv); -- 2.21.3 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2020-05-28 17:13:03.096657826 +0100 +++ 0077-net-mlx4-fix-build-with-fno-common.patch 2020-05-28 17:12:59.161555043 +0100 @@ -1 +1 @@ -From a5e5af7f20b4106b68eeedf83daada0371b83918 Mon Sep 17 00:00:00 2001 +From f808ec01666ecaad192730349ebb5080bdac5967 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit a5e5af7f20b4106b68eeedf83daada0371b83918 ] + @@ -20,2 +21,0 @@ -Cc: stable@dpdk.org - @@ -31 +31 @@ -index 8e298788af..5d7202720b 100644 +index 4428edf108..975df9b747 100644 @@ -34 +34 @@ -@@ -50,4 +50,8 @@ +@@ -49,4 +49,8 @@ @@ -41,2 +41,2 @@ - static const char *MZ_MLX4_PMD_SHARED_DATA = "mlx4_pmd_shared_data"; - + struct mlx4_dev_list mlx4_mem_event_cb_list = + LIST_HEAD_INITIALIZER(mlx4_mem_event_cb_list); @@ -55 +55 @@ -index 8baf33fa94..9de6c59411 100644 +index 29389f1ea7..baf0cd73a8 100644 @@ -58 +58 @@ -@@ -125,5 +125,5 @@ struct txq { +@@ -121,5 +121,5 @@ struct txq {