mirror of
git://git.yoctoproject.org/meta-dpdk.git
synced 2025-07-19 21:09:04 +02:00
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>
This commit is contained in:
parent
c8c30c2c4e
commit
be387ee9e5
|
@ -0,0 +1,48 @@
|
||||||
|
From a385972c3675dd2b4792ab5b3cf7a536e6f9846c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Reshma Pattan <reshma.pattan@intel.com>
|
||||||
|
Date: Thu, 2 May 2019 10:33:34 +0100
|
||||||
|
Subject: [PATCH] mk: disable warning for packed member pointer
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
gcc 9 on Fedora 30 gives an error
|
||||||
|
"taking address of packed member may result in an
|
||||||
|
unaligned pointer value" warnings.
|
||||||
|
|
||||||
|
For clang builds this warning is already disabled,
|
||||||
|
so disable "-Waddress-of-packed-member" for gcc builds
|
||||||
|
also.
|
||||||
|
|
||||||
|
Snippet of build error:
|
||||||
|
lib/librte_eal/linux/eal/eal_memalloc.c: In function ‘alloc_seg_walk’:
|
||||||
|
lib/librte_eal/linux/eal/eal_memalloc.c:768:12: error:
|
||||||
|
taking address of packed member of ‘struct rte_mem_config’ may result
|
||||||
|
in an unaligned pointer value [-Werror=address-of-packed-member]
|
||||||
|
768 | cur_msl = &mcfg->memsegs[msl_idx];
|
||||||
|
| ^~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
|
||||||
|
Tested-by: David Marchand <david.marchand@redhat.com>
|
||||||
|
Upstream-Status: Backport
|
||||||
|
Signed-off-by: He Zhe <zhe.he@windriver.com>
|
||||||
|
---
|
||||||
|
mk/toolchain/gcc/rte.vars.mk | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/mk/toolchain/gcc/rte.vars.mk b/mk/toolchain/gcc/rte.vars.mk
|
||||||
|
index d8b99fa..b852fcf 100644
|
||||||
|
--- a/mk/toolchain/gcc/rte.vars.mk
|
||||||
|
+++ b/mk/toolchain/gcc/rte.vars.mk
|
||||||
|
@@ -87,5 +87,8 @@ WERROR_FLAGS += -Wimplicit-fallthrough=2
|
||||||
|
WERROR_FLAGS += -Wno-format-truncation
|
||||||
|
endif
|
||||||
|
|
||||||
|
+# disable packed member unalign warnings
|
||||||
|
+WERROR_FLAGS += -Wno-address-of-packed-member
|
||||||
|
+
|
||||||
|
export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF
|
||||||
|
export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
|
@ -12,4 +12,5 @@ SRC_URI += "\
|
||||||
file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \
|
file://dpdk-16.07-dpdk-fix-for-parellel-make-issue.patch \
|
||||||
file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \
|
file://dpdk-17.02-dpdk-fix-installation-warning-and-issue.patch \
|
||||||
file://dpdk-17.11-Fix-strncpy-error-for-GCC8.patch \
|
file://dpdk-17.11-Fix-strncpy-error-for-GCC8.patch \
|
||||||
|
file://dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch \
|
||||||
"
|
"
|
||||||
|
|
|
@ -9,6 +9,10 @@ LIC_FILES_CHKSUM = "file://license/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4
|
||||||
file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \
|
file://license/lgpl-2.1.txt;md5=4b54a1fd55a448865a0b32d41598759d \
|
||||||
file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444"
|
file://license/bsd-3-clause.txt;md5=0f00d99239d922ffd13cabef83b33444"
|
||||||
|
|
||||||
|
SRC_URI += " \
|
||||||
|
file://dpdk-17.11-mk-disable-warning-for-packed-member-pointer.patch \
|
||||||
|
"
|
||||||
|
|
||||||
do_install_append () {
|
do_install_append () {
|
||||||
# Remove the unneeded dir
|
# Remove the unneeded dir
|
||||||
rm -rf ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
|
rm -rf ${D}/${INSTALL_PATH}/${RTE_TARGET}/app
|
||||||
|
|
Loading…
Reference in New Issue
Block a user