From: Oliver Upton <oliver.upton@linux.dev>
To: Zenghui Yu <yuzenghui@huawei.com>
Cc: Eric Auger <eauger@redhat.com>,
kvm@vger.kernel.org, kvmarm@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-perf-users@vger.kernel.org, Mark Brown <broonie@kernel.org>,
Jing Zhang <jingzhangos@google.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
James Morse <james.morse@arm.com>, Marc Zyngier <maz@kernel.org>,
Paolo Bonzini <pbonzini@redhat.com>,
Adrian Hunter <adrian.hunter@intel.com>,
Ian Rogers <irogers@google.com>,
Namhyung Kim <namhyung@kernel.org>, Jiri Olsa <jolsa@kernel.org>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Mark Rutland <mark.rutland@arm.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Ingo Molnar <mingo@redhat.com>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH v3 5/5] KVM: arm64: selftests: Test for setting ID register from usersapce
Date: Mon, 8 Jan 2024 22:40:11 +0000 [thread overview]
Message-ID: <ZZx5y_iy9kXg47SW@linux.dev> (raw)
In-Reply-To: <ab1337bc-d4a2-0afc-3e26-0d50dff4ea73@huawei.com>
Hi Zenghui,
On Fri, Jan 05, 2024 at 05:07:08PM +0800, Zenghui Yu wrote:
> On 2023/10/19 16:38, Eric Auger wrote:
>
> > > +static const struct reg_ftr_bits ftr_id_aa64dfr0_el1[] = {
> > > + S_REG_FTR_BITS(FTR_LOWER_SAFE, ID_AA64DFR0_EL1, PMUVer, 0),
> >
> > Strictly speaking this is not always safe to have a lower value. For
> > instance: From Armv8.1, if FEAT_PMUv3 is implemented, the value 0b0001
> > is not permitted. But I guess this consistency is to be taken into
> > account by the user space. But may be wort a comment. Here and below
> >
> > You may at least clarify what does mean 'safe'
> >
> > > + REG_FTR_BITS(FTR_LOWER_SAFE, ID_AA64DFR0_EL1, DebugVer, 0),
>
> I've seen the following failure on Cortex A72 where
> ID_AA64DFR0_EL1.DebugVer is 6.
Ah, yes, the test is wrong. KVM enforces a minimum value of 0x6 on this
field, yet get_safe_value() returns 0x5 for the field.
Jing, do you have time to check this test for similar failures and send
out a fix for Zenghui's observations?
> # ./aarch64/set_id_regs
> TAP version 13
> 1..79
> ok 1 ID_AA64DFR0_EL1_PMUVer
> ==== Test Assertion Failure ====
> include/kvm_util_base.h:553: !ret
> pid=2288505 tid=2288505 errno=22 - Invalid argument
> 1 0x0000000000402787: vcpu_set_reg at kvm_util_base.h:553
> (discriminator 6)
> 2 (inlined by) test_reg_set_success at set_id_regs.c:342
> (discriminator 6)
> 3 (inlined by) test_user_set_reg at set_id_regs.c:413 (discriminator
> 6)
> 4 0x0000000000401943: main at set_id_regs.c:475
> 5 0x0000ffffbdd5d03b: ?? ??:0
> 6 0x0000ffffbdd5d113: ?? ??:0
> 7 0x0000000000401a2f: _start at ??:?
> KVM_SET_ONE_REG failed, rc: -1 errno: 22 (Invalid argument)
--
Thanks,
Oliver
next prev parent reply other threads:[~2024-01-08 22:40 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-11 19:57 [PATCH v3 0/5] KVM: selftests: Add ID reg test, update headers Oliver Upton
2023-10-11 19:57 ` [PATCH v3 1/5] tools: arm64: Add a Makefile for generating sysreg-defs.h Oliver Upton
2023-10-18 9:50 ` Eric Auger
2023-10-11 19:57 ` [PATCH v3 2/5] perf build: Generate arm64's sysreg-defs.h and add to include path Oliver Upton
2023-10-17 22:23 ` Namhyung Kim
2023-10-18 14:12 ` Arnaldo Carvalho de Melo
2023-11-07 6:10 ` Ian Rogers
2023-11-17 21:42 ` Ian Rogers
2023-10-11 19:57 ` [PATCH v3 3/5] KVM: selftests: Generate " Oliver Upton
2023-10-18 9:52 ` Eric Auger
2023-10-23 13:53 ` Nina Schoetterl-Glausch
2023-10-27 0:59 ` Oliver Upton
2023-10-25 9:02 ` Aishwarya TCV
2023-10-25 19:07 ` Oliver Upton
2023-10-26 1:06 ` Aishwarya TCV
2023-10-11 19:57 ` [PATCH v3 4/5] tools headers arm64: Update sysreg.h with kernel sources Oliver Upton
2023-10-18 11:57 ` Eric Auger
2023-10-18 12:16 ` Mark Brown
2023-10-18 13:06 ` Eric Auger
2023-10-19 0:06 ` Oliver Upton
2023-10-19 8:43 ` Eric Auger
2023-10-19 19:48 ` Oliver Upton
2023-10-11 19:57 ` [PATCH v3 5/5] KVM: arm64: selftests: Test for setting ID register from usersapce Oliver Upton
2023-10-16 15:30 ` Cornelia Huck
2023-10-17 8:03 ` Oliver Upton
2023-10-18 12:35 ` Cornelia Huck
2023-10-19 8:38 ` Eric Auger
2024-01-05 9:07 ` Zenghui Yu
2024-01-08 22:40 ` Oliver Upton [this message]
2024-01-09 1:31 ` Jing Zhang
2024-01-09 15:36 ` Zenghui Yu
2024-01-09 16:23 ` Jing Zhang
2024-01-09 7:50 ` Itaru Kitayama
2023-10-18 13:44 ` [PATCH v3 0/5] KVM: selftests: Add ID reg test, update headers Marc Zyngier
2023-10-18 23:58 ` Oliver Upton
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=ZZx5y_iy9kXg47SW@linux.dev \
--to=oliver.upton@linux.dev \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=broonie@kernel.org \
--cc=eauger@redhat.com \
--cc=irogers@google.com \
--cc=james.morse@arm.com \
--cc=jingzhangos@google.com \
--cc=jolsa@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=maz@kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=suzuki.poulose@arm.com \
--cc=yuzenghui@huawei.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