[dpdk-dev] [PATCH v4 3/3] raw/ifpga: fix the clang compiling issue
Gavin Hu
gavin.hu at arm.com
Thu May 17 04:46:10 CEST 2018
From: gavin hu <gavin.hu at arm.com>
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 <gavin.hu at arm.com>
Reviewed-by: Honnappa Nagarahalli <Honnappa.Nagarahalli at arm.com>
Reviewed-by: Jerin Jacob <jerin.jacob at caviumnetworks.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
More information about the dev
mailing list