summaryrefslogtreecommitdiffstats
path: root/recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch')
-rw-r--r--recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch119
1 files changed, 0 insertions, 119 deletions
diff --git a/recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch b/recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch
deleted file mode 100644
index 399510aa..00000000
--- a/recipes-extended/dpdk/dpdk/0001-fix-build-with-gcc-7.1.patch
+++ /dev/null
@@ -1,119 +0,0 @@
1From 03ee26cd708971a51f056e3f53482367aa38fcb1 Mon Sep 17 00:00:00 2001
2From: Chunrong Guo <chunrong.guo@nxp.com>
3Date: Wed, 12 Jul 2017 12:03:38 +0800
4Subject: [PATCH] fix build with gcc 7.1
5
6Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com>
7---
8 lib/librte_cmdline/cmdline_parse_num.c | 4 ++--
9 lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h | 2 +-
10 lib/librte_hash/rte_crc_arm64.h | 2 ++
11 lib/librte_ring/rte_ring.h | 18 ++++++++++++------
12 mk/toolchain/gcc/rte.vars.mk | 6 ++++++
13 5 files changed, 23 insertions(+), 9 deletions(-)
14
15diff --git a/lib/librte_cmdline/cmdline_parse_num.c b/lib/librte_cmdline/cmdline_parse_num.c
16index b0f9a35..e507ec4 100644
17--- a/lib/librte_cmdline/cmdline_parse_num.c
18+++ b/lib/librte_cmdline/cmdline_parse_num.c
19@@ -250,7 +250,7 @@ cmdline_parse_num(cmdline_parse_token_hdr_t *tk, const char *srcbuf, void *res,
20
21 case HEX:
22 st = HEX_OK;
23- /* no break */
24+ /* fall-through no break */
25 case HEX_OK:
26 if (c >= '0' && c <= '9') {
27 if (add_to_res(c - '0', &res1, 16) < 0)
28@@ -282,7 +282,7 @@ cmdline_parse_num(cmdline_parse_token_hdr_t *tk, const char *srcbuf, void *res,
29
30 case BIN:
31 st = BIN_OK;
32- /* no break */
33+ /* fall-through */
34 case BIN_OK:
35 if (c >= '0' && c <= '1') {
36 if (add_to_res(c - '0', &res1, 2) < 0)
37diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
38index e5554ca..8d76f32 100644
39--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
40+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
41@@ -607,7 +607,7 @@ struct igb_adapter {
42 int int_mode;
43 u32 rss_queues;
44 u32 vmdq_pools;
45- char fw_version[32];
46+ char fw_version[43];
47 u32 wvbr;
48 struct igb_mac_addr *mac_table;
49 #ifdef CONFIG_IGB_VMDQ_NETDEV
50diff --git a/lib/librte_hash/rte_crc_arm64.h b/lib/librte_hash/rte_crc_arm64.h
51index 7dd6334..a17c0e4 100644
52--- a/lib/librte_hash/rte_crc_arm64.h
53+++ b/lib/librte_hash/rte_crc_arm64.h
54@@ -110,8 +110,10 @@ rte_hash_crc_set_alg(uint8_t alg)
55 case CRC32_ARM64:
56 if (!rte_cpu_get_flag_enabled(RTE_CPUFLAG_CRC32))
57 alg = CRC32_SW;
58+ /* fall-through */
59 case CRC32_SW:
60 crc32_alg = alg;
61+ /* fall-through */
62 default:
63 break;
64 }
65diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h
66index 0e22e69..085f3fe 100644
67--- a/lib/librte_ring/rte_ring.h
68+++ b/lib/librte_ring/rte_ring.h
69@@ -364,9 +364,12 @@ void rte_ring_dump(FILE *f, const struct rte_ring *r);
70 r->ring[idx+3] = obj_table[i+3]; \
71 } \
72 switch (n & 0x3) { \
73- case 3: r->ring[idx++] = obj_table[i++]; \
74- case 2: r->ring[idx++] = obj_table[i++]; \
75- case 1: r->ring[idx++] = obj_table[i++]; \
76+ case 3: \
77+ r->ring[idx++] = obj_table[i++]; /* fallthrough */ \
78+ case 2: \
79+ r->ring[idx++] = obj_table[i++]; /* fallthrough */ \
80+ case 1: \
81+ r->ring[idx++] = obj_table[i++]; /* fallthrough */ \
82 } \
83 } else { \
84 for (i = 0; idx < size; i++, idx++)\
85@@ -390,9 +393,12 @@ void rte_ring_dump(FILE *f, const struct rte_ring *r);
86 obj_table[i+3] = r->ring[idx+3]; \
87 } \
88 switch (n & 0x3) { \
89- case 3: obj_table[i++] = r->ring[idx++]; \
90- case 2: obj_table[i++] = r->ring[idx++]; \
91- case 1: obj_table[i++] = r->ring[idx++]; \
92+ case 3: \
93+ obj_table[i++] = r->ring[idx++]; /* fallthrough */ \
94+ case 2: \
95+ obj_table[i++] = r->ring[idx++]; /* fallthrough */ \
96+ case 1: \
97+ obj_table[i++] = r->ring[idx++]; /* fallthrough */ \
98 } \
99 } else { \
100 for (i = 0; idx < size; i++, idx++) \
101diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk
102index 94f6412..350c8bc 100644
103--- a/mk/toolchain/gcc/rte.vars.mk
104+++ b/mk/toolchain/gcc/rte.vars.mk
105@@ -101,5 +101,11 @@ ifeq ($(shell test $(GCC_VERSION) -lt 47 && echo 1), 1)
106 WERROR_FLAGS += -Wno-uninitialized
107 endif
108
109+ifeq ($(shell test $(GCC_VERSION) -gt 70 && echo 1), 1)
110+# Tell GCC only to error for switch fallthroughs without a suitable comment
111+# Ignore errors for snprintf truncation
112+WERROR_FLAGS += -Wno-format-truncation
113+endif
114+
115 export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
116 export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS
117--
1182.7.4
119