From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gavin.hu@arm.com>
Received: from foss.arm.com (foss.arm.com [217.140.101.70])
 by dpdk.org (Postfix) with ESMTP id 3CDF11B6B1
 for <dev@dpdk.org>; Wed, 16 May 2018 08:08:38 +0200 (CEST)
Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])
 by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A45671435;
 Tue, 15 May 2018 23:08:37 -0700 (PDT)
Received: from net-arm-c2400_01.shanghai.arm.com
 (net-arm-c2400_01.shanghai.arm.com [10.169.40.174])
 by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 33B0B3F53D;
 Tue, 15 May 2018 23:08:37 -0700 (PDT)
From: Gavin Hu <gavin.hu@arm.com>
To: dev@dpdk.org
Cc: gavin hu <gavin.hu@arm.com>
Date: Wed, 16 May 2018 14:08:02 +0800
Message-Id: <20180516060802.36181-3-gavin.hu@arm.com>
X-Mailer: git-send-email 2.17.0
In-Reply-To: <20180516060802.36181-1-gavin.hu@arm.com>
References: <1526372924-28411-1-git-send-email-gavin.hu@arm.com>
 <20180516060802.36181-1-gavin.hu@arm.com>
Subject: [dpdk-dev] [PATCH v3 3/3] raw/ifpga_rawdev: fix the clang compiling
	issue
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 16 May 2018 06:08:38 -0000

From: gavin hu <gavin.hu@arm.com>

The patch fixes the compile issue with clang on ARM64.

Newly introduced #pragma pack(1) in the header file caused comipiling
issues for the files who included it.

In file included from ~/dpdk/drivers/raw/ifpga_rawdev/base/
ifpga_fme_dperf.c:5:
In file included from ~/dpdk/drivers/raw/ifpga_rawdev/base/
ifpga_feature_dev.h:8:
~/dpdk/drivers/raw/ifpga_rawdev/base/ifpga_hw.h:8:10: error:
the current #pragma
pack alignment value is modified in the included file [-Werror,
-Wpragma-pack]
~/dpdk/drivers/raw/ifpga_rawdev/base/ifpga_defines.h:100:9: note:
previous '#pragma pack' directive that modifies alignment is here.

The fix is to change the #pragma pack alignment locally and not have
effect on other files who included this header file.

Fixes: 56bb54ea1bdf ("raw/ifpga/base: add Intel FPGA OPAE share code")

Signed-off-by: Gavin Hu <gavin.hu@arm.com>
Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
---
 drivers/raw/ifpga_rawdev/base/ifpga_defines.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/raw/ifpga_rawdev/base/ifpga_defines.h b/drivers/raw/ifpga_rawdev/base/ifpga_defines.h
index 0b9622d5f..aa0252720 100644
--- a/drivers/raw/ifpga_rawdev/base/ifpga_defines.h
+++ b/drivers/raw/ifpga_rawdev/base/ifpga_defines.h
@@ -97,7 +97,7 @@ enum port_feature_id {
 /*
  * All headers and structures must be byte-packed to match the spec.
  */
-#pragma pack(1)
+#pragma pack(push, 1)
 
 struct feature_header {
 	union {
@@ -1659,4 +1659,5 @@ struct bts_header {
 	(((bts_hdr)->guid_h == GBS_GUID_H) &&		\
 	((bts_hdr)->guid_l == GBS_GUID_L))
 
+#pragma pack(pop)
 #endif /* _BASE_IFPGA_DEFINES_H_ */
-- 
2.17.0