public inbox for kvmarm@lists.cs.columbia.edu
 help / color / mirror / Atom feed
From: Marc Zyngier <maz@kernel.org>
To: Andrew Jones <drjones@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>, kvmarm@lists.cs.columbia.edu
Subject: Re: [PATCH] KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3)
Date: Wed, 16 Mar 2022 14:34:11 +0000	[thread overview]
Message-ID: <877d8uynj0.wl-maz@kernel.org> (raw)
In-Reply-To: <20220316125129.392128-1-drjones@redhat.com>

+Paolo

On Wed, 16 Mar 2022 12:51:29 +0000,
Andrew Jones <drjones@redhat.com> wrote:
> 
> When testing a kernel with commit a5905d6af492 ("KVM: arm64:
> Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated")
> get-reg-list output
> 
> vregs: Number blessed registers:   234
> vregs: Number registers:           238
> 
> vregs: There are 1 new registers.
> Consider adding them to the blessed reg list with the following lines:
> 
> 	KVM_REG_ARM_FW_REG(3),
> 
> vregs: PASS
> ...
> 
> That output inspired two changes: 1) add the new register to the
> blessed list and 2) explain why "Number registers" is actually four
> larger than "Number blessed registers" (on the system used for
> testing), even though only one register is being stated as new.
> The reason is that some registers are host dependent and they get
> filtered out when comparing with the blessed list. The system
> used for the test apparently had three filtered registers.
> 
> Signed-off-by: Andrew Jones <drjones@redhat.com>
> ---
>  tools/testing/selftests/kvm/aarch64/get-reg-list.c | 14 ++++++++++----
>  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/testing/selftests/kvm/aarch64/get-reg-list.c b/tools/testing/selftests/kvm/aarch64/get-reg-list.c
> index f769fc6cd927..7efe918ded9e 100644
> --- a/tools/testing/selftests/kvm/aarch64/get-reg-list.c
> +++ b/tools/testing/selftests/kvm/aarch64/get-reg-list.c
> @@ -503,8 +503,13 @@ static void run_test(struct vcpu_config *c)
>  		++missing_regs;
>  
>  	if (new_regs || missing_regs) {
> +		n = 0;
> +		for_each_reg_filtered(i)
> +			++n;
> +
>  		printf("%s: Number blessed registers: %5lld\n", config_name(c), blessed_n);
> -		printf("%s: Number registers:         %5lld\n", config_name(c), reg_list->n);
> +		printf("%s: Number registers:         %5lld (includes %lld filtered registers)\n",
> +		       config_name(c), reg_list->n, reg_list->n - n);
>  	}
>  
>  	if (new_regs) {
> @@ -683,9 +688,10 @@ static __u64 base_regs[] = {
>  	KVM_REG_ARM64 | KVM_REG_SIZE_U64 | KVM_REG_ARM_CORE | KVM_REG_ARM_CORE_REG(spsr[4]),
>  	KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_CORE | KVM_REG_ARM_CORE_REG(fp_regs.fpsr),
>  	KVM_REG_ARM64 | KVM_REG_SIZE_U32 | KVM_REG_ARM_CORE | KVM_REG_ARM_CORE_REG(fp_regs.fpcr),
> -	KVM_REG_ARM_FW_REG(0),
> -	KVM_REG_ARM_FW_REG(1),
> -	KVM_REG_ARM_FW_REG(2),
> +	KVM_REG_ARM_FW_REG(0),		/* KVM_REG_ARM_PSCI_VERSION */
> +	KVM_REG_ARM_FW_REG(1),		/* KVM_REG_ARM_SMCCC_ARCH_WORKAROUND_1 */
> +	KVM_REG_ARM_FW_REG(2),		/* KVM_REG_ARM_SMCCC_ARCH_WORKAROUND_2 */
> +	KVM_REG_ARM_FW_REG(3),		/* KVM_REG_ARM_SMCCC_ARCH_WORKAROUND_3 */
>  	ARM64_SYS_REG(3, 3, 14, 3, 1),	/* CNTV_CTL_EL0 */
>  	ARM64_SYS_REG(3, 3, 14, 3, 2),	/* CNTV_CVAL_EL0 */
>  	ARM64_SYS_REG(3, 3, 14, 0, 2),

Acked-by: Marc Zyngier <maz@kernel.org>

Paolo, I don't have anything pending for 5.17, so feel free to take it
directly into Linus' tree.

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

  reply	other threads:[~2022-03-16 14:34 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-16 12:51 [PATCH] KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3) Andrew Jones
2022-03-16 14:34 ` Marc Zyngier [this message]
2022-04-07  9:47 ` Marc Zyngier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877d8uynj0.wl-maz@kernel.org \
    --to=maz@kernel.org \
    --cc=drjones@redhat.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=pbonzini@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox