From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3493B45B14; Fri, 11 Oct 2024 19:36:13 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DBDF040DC9; Fri, 11 Oct 2024 19:36:12 +0200 (CEST) Received: from dkmailrelay1.smartsharesystems.com (smartserver.smartsharesystems.com [77.243.40.215]) by mails.dpdk.org (Postfix) with ESMTP id 7938A402A1 for ; Fri, 11 Oct 2024 19:36:11 +0200 (CEST) Received: from smartserver.smartsharesystems.com (smartserver.smartsharesys.local [192.168.4.10]) by dkmailrelay1.smartsharesystems.com (Postfix) with ESMTP id 4D4B4206C2; Fri, 11 Oct 2024 19:36:11 +0200 (CEST) Content-class: urn:content-classes:message Subject: RE: [dpdk-dev] [PATCH 1/2] mk: fix build for clang 4 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Date: Fri, 11 Oct 2024 19:36:08 +0200 Message-ID: <98CBD80474FA8B44BF855DF32C47DC35E9F7C6@smartserver.smartshare.dk> In-Reply-To: <20170417143559.11701-1-ferruh.yigit@intel.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [dpdk-dev] [PATCH 1/2] mk: fix build for clang 4 X-MimeOLE: Produced By Microsoft Exchange V6.5 Thread-Index: AdK3h/eV1fWc0T4UT/usLx6Tb49hqJDI9euQ References: <20170417143559.11701-1-ferruh.yigit@intel.com> From: =?iso-8859-1?Q?Morten_Br=F8rup?= To: "Ferruh Yigit" , "Stephen Hemminger" , "Robin Jarry" Cc: , "Robin Jarry" , "Wathsala Vithanage" , "Min Zhou" , "David Christensen" , "Stanislaw Kardach" , , , "Vipin Varghese" , "Thomas Monjalon" , "Jerin Jacob" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Ferruh Yigit > Sent: Monday, 17 April 2017 16.36 >=20 > clang 4 gives "taking address of packed member may result in an > unaligned pointer value" warnings in a few locations [1]. >=20 > Disabled "-Waddress-of-packed-member" warning for clang >=3D 4 >=20 > [1] build errors: > .../lib/librte_eal/common/eal_common_memzone.c:275:25: > error: taking address of packed member 'mlock' of class or structure > 'rte_mem_config' may result in an unaligned pointer value > [-Werror,-Waddress-of-packed-member] > rte_rwlock_write_lock(&mcfg->mlock); > ^~~~~~~~~~~ >=20 > .../lib/librte_ip_frag/rte_ipv4_reassembly.c:139:31: > error: taking address of packed member 'src_addr' of class or = structure > 'ipv4_hdr' may result in an unaligned pointer value > [-Werror,-Waddress-of-packed-member] > psd =3D (unaligned_uint64_t *)&ip_hdr->src_addr; > ^~~~~~~~~~~~~~~~ >=20 > .../lib/librte_vhost/vhost_user.c:1037:34: > error: taking address of packed member 'payload' of class or structure > 'VhostUserMsg' may result in an unaligned pointer value > [-Werror,-Waddress-of-packed-member] > vhost_user_set_vring_num(dev, &msg.payload.state); > ^~~~~~~~~~~~~~~~~ >=20 > Signed-off-by: Ferruh Yigit > --- > mk/toolchain/clang/rte.vars.mk | 5 +++++ > 1 file changed, 5 insertions(+) >=20 > diff --git a/mk/toolchain/clang/rte.vars.mk > b/mk/toolchain/clang/rte.vars.mk > index 7749b99..af34c10 100644 > --- a/mk/toolchain/clang/rte.vars.mk > +++ b/mk/toolchain/clang/rte.vars.mk > @@ -79,5 +79,10 @@ include > $(RTE_SDK)/mk/toolchain/$(RTE_TOOLCHAIN)/rte.toolchain-compat.mk > # workaround clang bug with warning "missing field initializer" for = "=3D > {0}" > WERROR_FLAGS +=3D -Wno-missing-field-initializers >=20 > +# disable packed member unalign warnings > +ifeq ($(shell test $(CLANG_MAJOR_VERSION) -ge 4 && echo 1), 1) > +WERROR_FLAGS +=3D -Wno-address-of-packed-member > +endif > + > export CC AS AR LD OBJCOPY OBJDUMP STRIP READELF > export TOOLCHAIN_CFLAGS TOOLCHAIN_LDFLAGS TOOLCHAIN_ASFLAGS > -- > 2.9.3 >=20 Revisiting an old patch... Maybe the code causing the warnings should have been fixed instead of = disabling the compiler warning? We would probably handle this differently today... I wonder how many = warnings it spews out with the warning enabled? -Morten