* [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo
@ 2023-06-09 13:13 Bertrand Marquis
2023-06-12 10:38 ` Julien Grall
0 siblings, 1 reply; 3+ messages in thread
From: Bertrand Marquis @ 2023-06-09 13:13 UTC (permalink / raw)
To: xen-devel; +Cc: Stefano Stabellini, Julien Grall, Volodymyr Babchuk
Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only
used for guests but also for dom0 so domain is a more suitable name.
While there also rename the create_guest_cpuinfo function to
create_domain_cpuinfo to be coherent.
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
---
xen/arch/arm/arm64/vsysreg.c | 6 ++--
xen/arch/arm/cpufeature.c | 40 +++++++++++++--------------
xen/arch/arm/include/asm/cpufeature.h | 2 +-
xen/arch/arm/vcpreg.c | 2 +-
4 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
index fe31f7b3827f..b5d54c569b33 100644
--- a/xen/arch/arm/arm64/vsysreg.c
+++ b/xen/arch/arm/arm64/vsysreg.c
@@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1)
case HSR_SYSREG_##reg: \
{ \
return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \
- 1, guest_cpuinfo.field.bits[offset]); \
+ 1, domain_cpuinfo.field.bits[offset]); \
}
void do_sysreg(struct cpu_user_regs *regs,
@@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs,
case HSR_SYSREG_ID_AA64PFR0_EL1:
{
- register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0];
+ register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0];
if ( is_sve_domain(v->domain) )
{
@@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs,
* When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1
* needs to be exposed.
*/
- register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0];
+ register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0];
if ( is_sve_domain(v->domain) )
guest_reg_value = system_cpuinfo.zfr64.bits[0];
diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
index b53e1a977601..5f4644865505 100644
--- a/xen/arch/arm/cpufeature.c
+++ b/xen/arch/arm/cpufeature.c
@@ -14,7 +14,7 @@
DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS);
-struct cpuinfo_arm __read_mostly guest_cpuinfo;
+struct cpuinfo_arm __read_mostly domain_cpuinfo;
#ifdef CONFIG_ARM_64
static bool has_sb_instruction(const struct arm_cpu_capabilities *entry)
@@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c)
/*
* This function is creating a cpuinfo structure with values modified to mask
* all cpu features that should not be published to guest.
- * The created structure is then used to provide ID registers values to guests.
+ * The created structure is then used to provide ID registers values to domains.
*/
-static int __init create_guest_cpuinfo(void)
+static int __init create_domain_cpuinfo(void)
{
/* Use the sanitized cpuinfo as initial guest cpuinfo */
- guest_cpuinfo = system_cpuinfo;
+ domain_cpuinfo = system_cpuinfo;
#ifdef CONFIG_ARM_64
/* Hide MPAM support as xen does not support it */
- guest_cpuinfo.pfr64.mpam = 0;
- guest_cpuinfo.pfr64.mpam_frac = 0;
+ domain_cpuinfo.pfr64.mpam = 0;
+ domain_cpuinfo.pfr64.mpam_frac = 0;
/* Hide SVE by default */
- guest_cpuinfo.pfr64.sve = 0;
- guest_cpuinfo.zfr64.bits[0] = 0;
+ domain_cpuinfo.pfr64.sve = 0;
+ domain_cpuinfo.zfr64.bits[0] = 0;
/* Hide MTE support as Xen does not support it */
- guest_cpuinfo.pfr64.mte = 0;
+ domain_cpuinfo.pfr64.mte = 0;
/* Hide PAC support as Xen does not support it */
- guest_cpuinfo.isa64.apa = 0;
- guest_cpuinfo.isa64.api = 0;
- guest_cpuinfo.isa64.gpa = 0;
- guest_cpuinfo.isa64.gpi = 0;
+ domain_cpuinfo.isa64.apa = 0;
+ domain_cpuinfo.isa64.api = 0;
+ domain_cpuinfo.isa64.gpa = 0;
+ domain_cpuinfo.isa64.gpi = 0;
#endif
/* Hide AMU support */
#ifdef CONFIG_ARM_64
- guest_cpuinfo.pfr64.amu = 0;
+ domain_cpuinfo.pfr64.amu = 0;
#endif
- guest_cpuinfo.pfr32.amu = 0;
+ domain_cpuinfo.pfr32.amu = 0;
/* Hide RAS support as Xen does not support it */
#ifdef CONFIG_ARM_64
- guest_cpuinfo.pfr64.ras = 0;
- guest_cpuinfo.pfr64.ras_frac = 0;
+ domain_cpuinfo.pfr64.ras = 0;
+ domain_cpuinfo.pfr64.ras_frac = 0;
#endif
- guest_cpuinfo.pfr32.ras = 0;
- guest_cpuinfo.pfr32.ras_frac = 0;
+ domain_cpuinfo.pfr32.ras = 0;
+ domain_cpuinfo.pfr32.ras_frac = 0;
return 0;
}
@@ -237,7 +237,7 @@ static int __init create_guest_cpuinfo(void)
* This function needs to be run after all smp are started to have
* cpuinfo structures for all cores.
*/
-__initcall(create_guest_cpuinfo);
+__initcall(create_domain_cpuinfo);
/*
* Local variables:
diff --git a/xen/arch/arm/include/asm/cpufeature.h b/xen/arch/arm/include/asm/cpufeature.h
index 03fe684b4d36..894f278a4a5a 100644
--- a/xen/arch/arm/include/asm/cpufeature.h
+++ b/xen/arch/arm/include/asm/cpufeature.h
@@ -461,7 +461,7 @@ static inline void update_system_features(const struct cpuinfo_arm *cpuinfo)
extern struct cpuinfo_arm cpu_data[];
#define current_cpu_data cpu_data[smp_processor_id()]
-extern struct cpuinfo_arm guest_cpuinfo;
+extern struct cpuinfo_arm domain_cpuinfo;
#endif /* __ASSEMBLY__ */
diff --git a/xen/arch/arm/vcpreg.c b/xen/arch/arm/vcpreg.c
index 4adfc0a68d0e..39aeda9dab62 100644
--- a/xen/arch/arm/vcpreg.c
+++ b/xen/arch/arm/vcpreg.c
@@ -169,7 +169,7 @@ TVM_REG32(CONTEXTIDR, CONTEXTIDR_EL1)
case HSR_CPREG32(reg): \
{ \
return handle_ro_read_val(regs, regidx, cp32.read, hsr, 1, \
- guest_cpuinfo.field.bits[offset]);\
+ domain_cpuinfo.field.bits[offset]);\
}
/* helper to define cases for all registers for one CRm value */
--
2.39.2 (Apple Git-143)
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo
2023-06-09 13:13 [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Bertrand Marquis
@ 2023-06-12 10:38 ` Julien Grall
2023-06-12 12:13 ` Bertrand Marquis
0 siblings, 1 reply; 3+ messages in thread
From: Julien Grall @ 2023-06-12 10:38 UTC (permalink / raw)
To: Bertrand Marquis, xen-devel; +Cc: Stefano Stabellini, Volodymyr Babchuk
Hi Bertrand,
On 09/06/2023 14:13, Bertrand Marquis wrote:
> Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only
> used for guests but also for dom0 so domain is a more suitable name.
>
> While there also rename the create_guest_cpuinfo function to
> create_domain_cpuinfo to be coherent.
>
> Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
> ---
> xen/arch/arm/arm64/vsysreg.c | 6 ++--
> xen/arch/arm/cpufeature.c | 40 +++++++++++++--------------
> xen/arch/arm/include/asm/cpufeature.h | 2 +-
> xen/arch/arm/vcpreg.c | 2 +-
> 4 files changed, 25 insertions(+), 25 deletions(-)
>
> diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
> index fe31f7b3827f..b5d54c569b33 100644
> --- a/xen/arch/arm/arm64/vsysreg.c
> +++ b/xen/arch/arm/arm64/vsysreg.c
> @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1)
> case HSR_SYSREG_##reg: \
> { \
> return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \
> - 1, guest_cpuinfo.field.bits[offset]); \
> + 1, domain_cpuinfo.field.bits[offset]); \
> }
>
> void do_sysreg(struct cpu_user_regs *regs,
> @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs,
>
> case HSR_SYSREG_ID_AA64PFR0_EL1:
> {
> - register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0];
> + register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0];
>
> if ( is_sve_domain(v->domain) )
> {
> @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs,
> * When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1
> * needs to be exposed.
> */
> - register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0];
> + register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0];
>
> if ( is_sve_domain(v->domain) )
> guest_reg_value = system_cpuinfo.zfr64.bits[0];
> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
> index b53e1a977601..5f4644865505 100644
> --- a/xen/arch/arm/cpufeature.c
> +++ b/xen/arch/arm/cpufeature.c
> @@ -14,7 +14,7 @@
>
> DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS);
>
> -struct cpuinfo_arm __read_mostly guest_cpuinfo;
> +struct cpuinfo_arm __read_mostly domain_cpuinfo;
>
> #ifdef CONFIG_ARM_64
> static bool has_sb_instruction(const struct arm_cpu_capabilities *entry)
> @@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c)
> /*
> * This function is creating a cpuinfo structure with values modified to mask
> * all cpu features that should not be published to guest.
I noticed you modified "guests" to "domains" below but not "guest" here.
Is this intended?
> - * The created structure is then used to provide ID registers values to guests.
> + * The created structure is then used to provide ID registers values to domains.
> */
> -static int __init create_guest_cpuinfo(void)
> +static int __init create_domain_cpuinfo(void)
> {
> /* Use the sanitized cpuinfo as initial guest cpuinfo */
Same question here.
> - guest_cpuinfo = system_cpuinfo;
> + domain_cpuinfo = system_cpuinfo;
Cheers,
--
Julien Grall
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo
2023-06-12 10:38 ` Julien Grall
@ 2023-06-12 12:13 ` Bertrand Marquis
0 siblings, 0 replies; 3+ messages in thread
From: Bertrand Marquis @ 2023-06-12 12:13 UTC (permalink / raw)
To: Julien Grall; +Cc: Xen-devel, Stefano Stabellini, Volodymyr Babchuk
Hi Julien,
> On 12 Jun 2023, at 12:38, Julien Grall <julien@xen.org> wrote:
>
> Hi Bertrand,
>
> On 09/06/2023 14:13, Bertrand Marquis wrote:
>> Rename the guest_cpuinfo structure to domain_cpuinfo as it is not only
>> used for guests but also for dom0 so domain is a more suitable name.
>> While there also rename the create_guest_cpuinfo function to
>> create_domain_cpuinfo to be coherent.
>> Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
>> ---
>> xen/arch/arm/arm64/vsysreg.c | 6 ++--
>> xen/arch/arm/cpufeature.c | 40 +++++++++++++--------------
>> xen/arch/arm/include/asm/cpufeature.h | 2 +-
>> xen/arch/arm/vcpreg.c | 2 +-
>> 4 files changed, 25 insertions(+), 25 deletions(-)
>> diff --git a/xen/arch/arm/arm64/vsysreg.c b/xen/arch/arm/arm64/vsysreg.c
>> index fe31f7b3827f..b5d54c569b33 100644
>> --- a/xen/arch/arm/arm64/vsysreg.c
>> +++ b/xen/arch/arm/arm64/vsysreg.c
>> @@ -76,7 +76,7 @@ TVM_REG(CONTEXTIDR_EL1)
>> case HSR_SYSREG_##reg: \
>> { \
>> return handle_ro_read_val(regs, regidx, hsr.sysreg.read, hsr, \
>> - 1, guest_cpuinfo.field.bits[offset]); \
>> + 1, domain_cpuinfo.field.bits[offset]); \
>> }
>> void do_sysreg(struct cpu_user_regs *regs,
>> @@ -300,7 +300,7 @@ void do_sysreg(struct cpu_user_regs *regs,
>> case HSR_SYSREG_ID_AA64PFR0_EL1:
>> {
>> - register_t guest_reg_value = guest_cpuinfo.pfr64.bits[0];
>> + register_t guest_reg_value = domain_cpuinfo.pfr64.bits[0];
>> if ( is_sve_domain(v->domain) )
>> {
>> @@ -336,7 +336,7 @@ void do_sysreg(struct cpu_user_regs *regs,
>> * When the guest has the SVE feature enabled, the whole id_aa64zfr0_el1
>> * needs to be exposed.
>> */
>> - register_t guest_reg_value = guest_cpuinfo.zfr64.bits[0];
>> + register_t guest_reg_value = domain_cpuinfo.zfr64.bits[0];
>> if ( is_sve_domain(v->domain) )
>> guest_reg_value = system_cpuinfo.zfr64.bits[0];
>> diff --git a/xen/arch/arm/cpufeature.c b/xen/arch/arm/cpufeature.c
>> index b53e1a977601..5f4644865505 100644
>> --- a/xen/arch/arm/cpufeature.c
>> +++ b/xen/arch/arm/cpufeature.c
>> @@ -14,7 +14,7 @@
>> DECLARE_BITMAP(cpu_hwcaps, ARM_NCAPS);
>> -struct cpuinfo_arm __read_mostly guest_cpuinfo;
>> +struct cpuinfo_arm __read_mostly domain_cpuinfo;
>> #ifdef CONFIG_ARM_64
>> static bool has_sb_instruction(const struct arm_cpu_capabilities *entry)
>> @@ -191,45 +191,45 @@ void identify_cpu(struct cpuinfo_arm *c)
>> /*
>> * This function is creating a cpuinfo structure with values modified to mask
>> * all cpu features that should not be published to guest.
>
> I noticed you modified "guests" to "domains" below but not "guest" here. Is this intended?
>
>> - * The created structure is then used to provide ID registers values to guests.
>> + * The created structure is then used to provide ID registers values to domains.
>> */
>> -static int __init create_guest_cpuinfo(void)
>> +static int __init create_domain_cpuinfo(void)
>> {
>> /* Use the sanitized cpuinfo as initial guest cpuinfo */
>
> Same question here.
Definitely should have been done, i will make a v2 and a path on "guest" without extra s.
Cheers
Bertrand
>
>> - guest_cpuinfo = system_cpuinfo;
>> + domain_cpuinfo = system_cpuinfo;
>
> Cheers,
>
> --
> Julien Grall
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-06-12 12:14 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-09 13:13 [PATCH] xen/arm: rename guest_cpuinfo in domain_cpuinfo Bertrand Marquis
2023-06-12 10:38 ` Julien Grall
2023-06-12 12:13 ` Bertrand Marquis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).