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 38F1BA00C3; Mon, 17 Jan 2022 14:12:05 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E31B1411C9; Mon, 17 Jan 2022 14:12:04 +0100 (CET) Received: from mailgw02.pantheon.sk (mailgw01.pantheon.sk [46.229.239.26]) by mails.dpdk.org (Postfix) with ESMTP id 2178A40141; Mon, 17 Jan 2022 14:12:03 +0100 (CET) Received: from mailgw02.pantheon.sk (localhost.localdomain [127.0.0.1]) by mailgw02.pantheon.sk (Proxmox) with ESMTP id 98C6A181BC5; Mon, 17 Jan 2022 14:12:02 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pantheon.tech; h=cc:cc:content-transfer-encoding:content-type:content-type :date:from:from:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=dkim; bh=0w1FbCoOvDCYELXk0RHF IyjS4iIGi9R+Tu2HAVe2o+E=; b=dms0XFZpQvIiemCE7U8qpb8/O+wfU9uDq0kW 4AnW41/yPOUBMBg5uPLZHLhrKJba3LdE4YCvDJ8Tyx4qN4u86lzmSEZ+Q/teclWl NgYIgBjn4VWsHTB49YE4v8HBbD5FMvg6geV1FgI+OtgdlpbNWoAQC8NnfUbwn8gJ idp4gAf7g8KvOyJX3+M0RdwItcH2uZ3rxxlQ1FemaSmxBn/QoxF9S9U1wm4teOF5 kTCyTM7udFXtrb1G8x8h/Z1Q0RP4YldjKdqUaK7RVDNgW3E6tRSfWa6EV9hOSpm1 FpT4r7J4Tq1RZxhPs7rD7iyFQiz7xifQQHdiQNW/zHUmJt8Veg== From: =?iso-8859-2?Q?Juraj_Linke=B9?= To: Ruifeng Wang , "thomas@monjalon.net" CC: "dev@dpdk.org" , "stable@dpdk.org" , "viktorin@rehivetech.com" , "bruce.richardson@intel.com" , "stephen@networkplumber.org" , "Honnappa Nagarahalli" , nd , nd Subject: RE: [PATCH] build: add missing arch define for Arm Thread-Topic: [PATCH] build: add missing arch define for Arm Thread-Index: AQHX8yPNe2vaK5j9x0OFZNatsn3j/axhUCMAgAEEcgCABQRIoA== Date: Mon, 17 Jan 2022 13:12:00 +0000 Message-ID: <794237e109494b63b45ba2ceb1f4b8f0@pantheon.tech> References: <20211217085430.820773-1-ruifeng.wang@arm.com> <10596176.5MRjnR8RnV@thomas> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.101.4.10] Content-Type: text/plain; charset="iso-8859-2" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 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 > -----Original Message----- > From: Ruifeng Wang > Sent: Friday, January 14, 2022 10:05 AM > To: thomas@monjalon.net > Cc: dev@dpdk.org; stable@dpdk.org; viktorin@rehivetech.com; > bruce.richardson@intel.com; stephen@networkplumber.org; Juraj Linke=B9 > ; Honnappa Nagarahalli > ; nd ; nd > Subject: RE: [PATCH] build: add missing arch define for Arm >=20 > > -----Original Message----- > > From: Thomas Monjalon > > Sent: Friday, January 14, 2022 1:33 AM > > To: Ruifeng Wang > > Cc: dev@dpdk.org; stable@dpdk.org; viktorin@rehivetech.com; > > bruce.richardson@intel.com; stephen@networkplumber.org; > > juraj.linkes@pantheon.tech; Honnappa Nagarahalli > > ; nd > > Subject: Re: [PATCH] build: add missing arch define for Arm > > > > 17/12/2021 09:54, Ruifeng Wang: > > > As per design document, RTE_ARCH is the name of the architecture. > > > However, the definition was missing on Arm with meson build. > > > It impacts applications that refers to this string. > > > > > > Added for Arm builds. > > > > > > Fixes: b1d48c41189a ("build: support ARM with meson") > > > Cc: stable@dpdk.org > > > > > > Signed-off-by: Ruifeng Wang > > > --- > > > ['RTE_ARCH_ARMv8_AARCH32', true], > > > + ['RTE_ARCH', 'arm64_aarch32'], > > > > Why not armv8_aarch32? >=20 > Thanks for the comments. > Agreed. armv8_aarch32 is consistent with the RTE_ARCH_xx macro above. >=20 > > > > [...] > > > dpdk_conf.set('RTE_ARCH_ARMv7', true) > > > + dpdk_conf.set('RTE_ARCH', 'armv7') > > [...] > > > # armv8 build > > > + dpdk_conf.set('RTE_ARCH', 'arm64') > > > > Why not armv8? > > > > What I prefer the most in silicon industry is the naming craziness :) >=20 > While armv8 usually refers to one generation of the Arm architecture, arm= 64 is > more generic for 64-bit architectures. > And what defined for armv8 build is RTE_ARCH_ARM64. So for consistency, > arm64 is better? >=20 Using armv8_aarch32 along with arm64 doesn't seem right. We should unite th= ese and I think armv8 makes sense. As you mentioned arvm8 is an arm64 archi= tecture and using the more precise identification is better in my opinion (= as that gives more information). As for the consistency with RTE_ARCH_ARM64= , I think the problem is that we don't have the RTE_ARCH_ARMv8 flag (which = would provide the consistency, but won't be used): The current code is, accurately, written for 64bit arm architectures (all o= f them). There is currently no need to differentiate between 64bit arm architectures= which is why RTE_ARCH_ARMv8 doesn't exist. However, armv8 exists and we know how to identify it which is why I think s= etting RTE_ARCH to armv8 is the way to go. So my thinking is RTE_ARCH should be set to armv8, which implies RTE_ARCH_A= RMv8 which in turn implies RTE_ARCH_ARM64. We're just missing the middle pa= rt since there's no use for it now. And to be fully consistent, we could add RTE_ARCH_ARM32 to armv7 (as a supe= rset of RTE_ARCH_ARMv7, but that likely won't be of much use).