summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHe Zhe <zhe.he@windriver.com>2019-06-11 11:06:49 +0800
committerAnuj Mittal <anuj.mittal@intel.com>2019-06-11 14:03:38 +0800
commitbe387ee9e5ae12e2e92d6c7921aa79283dbbeb8a (patch)
tree807110fb4ff393042bc7bd62f58c6d197433e082
parentc8c30c2c4e2f36b4a55a69a475fe774015423705 (diff)
downloadmeta-dpdk-be387ee9e5ae12e2e92d6c7921aa79283dbbeb8a.tar.gz
dpdk: mk: disable warning for packed member pointer
Backport a patch from upstream to fix the following build failure. x86_64-native-linuxapp-gcc/include/rte_ether.h:178:2: error: converting a packed 'const struct ether_addr' pointer (alignment 1) to a 'unaligned_uint16_t' {aka 'const short unsigned int'} pointer (alignment 2) may result in an unaligned pointer value [-Werror=address-of-packed-member] | 178 | const unaligned_uint16_t *ea_words = (const unaligned_uint16_t *)ea; | | ^~~~~ Signed-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
-rw-r--r--recipes-extended/dpdk/dpdk/dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch48
-rw-r--r--recipes-extended/dpdk/dpdk_17.11.3.bb1
-rw-r--r--recipes-extended/dpdk/dpdk_18.11.1.bb4
3 files changed, 53 insertions, 0 deletions
diff --git a/recipes-extended/dpdk/dpdk/dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch b/recipes-extended/dpdk/dpdk/dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch
new file mode 100644
index 0000000..70a8dec
--- /dev/null
+++ b/recipes-extended/dpdk/dpdk/dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch
@@ -0,0 +1,48 @@
1From a385972c3675dd2b4792ab5b3cf7a536e6f9846c Mon Sep 17 00:00:00 2001
2From: Reshma Pattan <reshma.pattan@intel.com>
3Date: Thu, 2 May 2019 10:33:34 +0100
4Subject: [PATCH] mk: disable warning for packed member pointer
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9gcc 9 on Fedora 30 gives an error
10"taking address of packed member may result in an
11unaligned pointer value" warnings.
12
13For clang builds this warning is already disabled,
14so disable "-Waddress-of-packed-member" for gcc builds
15also.
16
17Snippet of build error:
18lib/librte_eal/linux/eal/eal_memalloc.c: In function ‘alloc_seg_walk’:
19lib/librte_eal/linux/eal/eal_memalloc.c:768:12: error:
20taking address of packed member of ‘struct rte_mem_config’ may result
21in an unaligned pointer value [-Werror=address-of-packed-member]
22 768 | cur_msl = &mcfg->memsegs[msl_idx];
23 | ^~~~~~~~~~~~~~~~~~~~~~~
24
25Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
26Tested-by: David Marchand <david.marchand@redhat.com>
27Upstream-Status: Backport
28Signed-off-by: He Zhe <zhe.he@windriver.com>
29---
30 mk/toolchain/gcc/rte.vars.mk | 3 +++
31 1 file changed, 3 insertions(+)
32
33diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk
34index d8b99fa..b852fcf 100644
35--- a/mk/toolchain/gcc/rte.vars.mk
36+++ b/mk/toolchain/gcc/rte.vars.mk
37@@ -87,5 +87,8 @@ WERROR_FLAGS += -Wimplicit-fallthrough=2
38 WERROR_FLAGS += -Wno-format-truncation
39 endif
40
41+# disable packed member unalign warnings
42+WERROR_FLAGS += -Wno-address-of-packed-member
43+
44 export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
45 export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS
46--
472.7.4
48
diff --git a/recipes-extended/dpdk/dpdk_17.11.3.bb b/recipes-extended/dpdk/dpdk_17.11.3.bb
index 7fc89d2..af42ad8 100644
--- a/recipes-extended/dpdk/dpdk_17.11.3.bb
+++ b/recipes-extended/dpdk/dpdk_17.11.3.bb
@@ -12,4 +12,5 @@ SRC_URI += "\
12 file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \ 12 file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \
13 file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \ 13 file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \
14 file://dpdk-17.11-Fix-strncpy-error-for-GCC8.patch \ 14 file://dpdk-17.11-Fix-strncpy-error-for-GCC8.patch \
15 file://dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch \
15" 16"
diff --git a/recipes-extended/dpdk/dpdk_18.11.1.bb b/recipes-extended/dpdk/dpdk_18.11.1.bb
index 2d04346..39beb65 100644
--- a/recipes-extended/dpdk/dpdk_18.11.1.bb
+++ b/recipes-extended/dpdk/dpdk_18.11.1.bb
@@ -9,6 +9,10 @@ LIC_FILES_CHKSUM = "file://license/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4
9 file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \ 9 file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \
10 file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444" 10 file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444"
11 11
12SRC_URI += " \
13 file://dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch \
14 "
15
12do_install_append () { 16do_install_append () {
13 # Remove the unneeded dir 17 # Remove the unneeded dir
14 rm -rf ${D}/${INSTALL_PATH}/${RTE_TARGET}/app 18 rm -rf ${D}/${INSTALL_PATH}/${RTE_TARGET}/app