From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gavin Hu Subject: [PATCH v4 3/3] raw/ifpga: fix the clang compiling issue Date: Thu, 17 May 2018 10:46:10 +0800 Message-ID: <20180517024610.36416-3-gavin.hu@arm.com> References: <1526372924-28411-1-git-send-email-gavin.hu@arm.com> <20180517024610.36416-1-gavin.hu@arm.com> Cc: jerin.jacob@caviumnetworks.com, gavin hu To: dev@dpdk.org Return-path: Received: from foss.arm.com (usa-sjc-mx-foss1.foss.arm.com [217.140.101.70]) by dpdk.org (Postfix) with ESMTP id F34FC3250 for ; Thu, 17 May 2018 04:46:25 +0200 (CEST) In-Reply-To: <20180517024610.36416-1-gavin.hu@arm.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: gavin hu The patch fixes the compile issue with clang on ARM64, as well as clang + X86 builing hosts. 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 Reviewed-by: Honnappa Nagarahalli Reviewed-by: Jerin Jacob --- 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