[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 2/4] xen/arm: split is_32bit/64bit_domain() between arm64/arm32


  • To: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
  • From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
  • Date: Wed, 27 Aug 2025 00:23:13 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=CEtG11dicL76z7ANfatS456H8ipnPkrKnEv7LBElCpI=; b=jXH1dt9rwUu0MSWqAaC4yvbFiT50vy06ngGsbk/xFbeibstgjG5A7E/b2OyBWScPB8bU8uVbOze5ts6L+27/pevjUs4T60y/hFTK5FsvvCAQECLTkubDl/4ltnaHpR1SHaHsCvHpJiRcHrtYbWGK96l4o/8TqKCnlFP5srav1wRe7oB3zWxNk9Z8azfovsJ1QqIlzd7juGRkh67on7DrQEgatueVxMJV7N3QvYCpgzh3zowtx7RBjrqFHcwEuYJ/ybWdaHG071VLWLpKA1AAOeOfN1c2khr0ktUU87CLVPlypo8k503f65lDf4P6rgzA0FIBGp5CtGrB+9uY2wYZpQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=F1kjvEA00j3sEPP22SDtYr/g3lo66z0HfCzDg8s4A5C8MrpJFBoLSYA8CBjWUfVkQro7a7b1uDxXEcM4UGWxSF+4sGq+Zy4VI54RBJqg29mHKrjm6Wu2kVmw82iFUTXVZBQtfn0dKwTYW4oi4iFSlMBIWKsU3IliC990Fq11xWunTb8N6fFhOv+LBnm0Ez3YfiGx+PY8uDVTO5kpDLu34JaKDAD6bBfyR62d0OYaD2Ou/zcYwFC+EeyLhq5q8TTPp5SCNnCuSsFSAVC/y7cHUAQSa9dY7BpJWHGhWteNnUQJi37VYDg96RhEgZUrajnekc894cM6VRZAmKMYMPPb8A==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>
  • Delivery-date: Wed, 27 Aug 2025 00:23:19 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHcBrdwbCiaA0DkGUiaPFn5+2VGXA==
  • Thread-topic: [PATCH v2 2/4] xen/arm: split is_32bit/64bit_domain() between arm64/arm32

Grygorii Strashko <grygorii_strashko@xxxxxxxx> writes:

> From: Grygorii Strashko <grygorii_strashko@xxxxxxxx>
>
> Split is_32bit/64bit_domain() macro implementations between arm64/arm32.
>
> Signed-off-by: Grygorii Strashko <grygorii_strashko@xxxxxxxx>

Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@xxxxxxxx>

> ---
> v2:
> - fix comments related to macro parameters evaluation issues
>
>  xen/arch/arm/include/asm/arm32/domain.h | 20 +++++++++++++++++
>  xen/arch/arm/include/asm/arm64/domain.h | 29 +++++++++++++++++++++++++
>  xen/arch/arm/include/asm/domain.h       |  7 +++---
>  3 files changed, 52 insertions(+), 4 deletions(-)
>  create mode 100644 xen/arch/arm/include/asm/arm32/domain.h
>  create mode 100644 xen/arch/arm/include/asm/arm64/domain.h
>
> diff --git a/xen/arch/arm/include/asm/arm32/domain.h 
> b/xen/arch/arm/include/asm/arm32/domain.h
> new file mode 100644
> index 000000000000..1bd0735c9194
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/arm32/domain.h
> @@ -0,0 +1,20 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +
> +#ifndef ARM_ARM32_DOMAIN_H
> +#define ARM_ARM32_DOMAIN_H
> +
> +/* Arm32 always runs guests in AArch32 mode */
> +
> +#define is_32bit_domain(d) ((void)(d), 1)
> +#define is_64bit_domain(d) ((void)(d), 0)
> +
> +#endif /* ARM_ARM32_DOMAIN_H */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/arch/arm/include/asm/arm64/domain.h 
> b/xen/arch/arm/include/asm/arm64/domain.h
> new file mode 100644
> index 000000000000..1a2d73950bf0
> --- /dev/null
> +++ b/xen/arch/arm/include/asm/arm64/domain.h
> @@ -0,0 +1,29 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +
> +#ifndef ARM_ARM64_DOMAIN_H
> +#define ARM_ARM64_DOMAIN_H
> +
> +/*
> + * Returns true if guest execution state is AArch32
> + *
> + * @d: pointer to the domain structure
> + */
> +#define is_32bit_domain(d) ((d)->arch.type == DOMAIN_32BIT)
> +
> +/*
> + * Returns true if guest execution state is AArch64
> + *
> + * @d: pointer to the domain structure
> + */
> +#define is_64bit_domain(d) ((d)->arch.type == DOMAIN_64BIT)
> +
> +#endif /* ARM_ARM64_DOMAIN_H */
> +
> +/*
> + * Local variables:
> + * mode: C
> + * c-file-style: "BSD"
> + * c-basic-offset: 4
> + * indent-tabs-mode: nil
> + * End:
> + */
> diff --git a/xen/arch/arm/include/asm/domain.h 
> b/xen/arch/arm/include/asm/domain.h
> index a3487ca71303..dde48178b857 100644
> --- a/xen/arch/arm/include/asm/domain.h
> +++ b/xen/arch/arm/include/asm/domain.h
> @@ -22,11 +22,10 @@ enum domain_type {
>      DOMAIN_32BIT,
>      DOMAIN_64BIT,
>  };
> -#define is_32bit_domain(d) ((d)->arch.type == DOMAIN_32BIT)
> -#define is_64bit_domain(d) ((d)->arch.type == DOMAIN_64BIT)
> +
> +# include <asm/arm64/domain.h>
>  #else
> -#define is_32bit_domain(d) (1)
> -#define is_64bit_domain(d) (0)
> +# include <asm/arm32/domain.h>
>  #endif
>  
>  /*

-- 
WBR, Volodymyr


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.