From: Marc Zyngier <maz@kernel.org>
To: Oliver Upton <oliver.upton@linux.dev>
Cc: Ilkka Koskinen <ilkka@os.amperecomputing.com>,
James Morse <james.morse@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>, Gavin Shan <gshan@redhat.com>,
Mark Rutland <mark.rutland@arm.com>,
Raghavendra Rao Ananta <rananta@google.com>,
D Scott Phillips <scott@os.amperecomputing.com>,
linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH] KVM: arm64: Workaround for Ampere AC03_CPU_36 (exception taken to an incorrect EL)
Date: Sun, 07 Jan 2024 11:37:41 +0000 [thread overview]
Message-ID: <86cyud9xx6.wl-maz@kernel.org> (raw)
In-Reply-To: <ZZmS32lXXlULIArw@linux.dev>
On Sat, 06 Jan 2024 17:50:23 +0000,
Oliver Upton <oliver.upton@linux.dev> wrote:
>
> On Sat, Jan 06, 2024 at 12:13:09PM +0000, Marc Zyngier wrote:
>
> [...]
>
> > > From 265cb193190c13c651d8e008d34d1d18505d4804 Mon Sep 17 00:00:00 2001
> > > From: Oliver Upton <oliver.upton@linux.dev>
> > > Date: Fri, 5 Jan 2024 23:18:14 +0000
> > > Subject: [PATCH] KVM: arm64: Mitigate AmpereOne erratum AC03_CPU_36
> > >
> > > The AmpereOne design suffers from an erratum where if an asynchronous
> > > exception arrives while EL2 is modifying hypervisor exception controls
> > > (i.e. HCR_EL2, SCTLR_EL2) the PE may take an invalid exception to
> > > another EL.
> >
> > Same questions about SCTLR_EL2 and the notion of "another EL".
>
> I've got the same questions :) This is just a rewording of Ampere's
> erratum description.
>
> https://amperecomputing.com/customer-connect/products/AmpereOne-device-documentation
Huh. That's full of... not a lot.
> > Other than the passing comments, I'm OK with this patch. However, I am
> > very worried that this is only the start of a very long game of
> > whack-a-mole, because there is no actual documentation on what goes
> > wrong.
> >
> > For example, we have plenty of writes to SCTLR_EL2 (using the
> > SCTLR_EL1 alias if running VHE) for MTE. Are any of those affected?
> >
> > Short of having some solid handle on what is happening, I don't see
> > how we can promise to support this system.
>
> Completely agree. At least on the AmpereOne machines I have access to
> this seems to do the trick, but that observation is no replacement for
> full documentation.
Indeed. The document you quoted acknowledges that there are issues
(one step up from the previous situation), but this is not enough to
independently develop a workaround that will survive the test of time.
For example, AC03_CPU_39 doesn't even list the failing encodings,
which may lead to real funnies if these encodings get used at some
point.
M.
--
Without deviation from the norm, progress is not possible.
WARNING: multiple messages have this Message-ID (diff)
From: Marc Zyngier <maz@kernel.org>
To: Oliver Upton <oliver.upton@linux.dev>
Cc: Ilkka Koskinen <ilkka@os.amperecomputing.com>,
James Morse <james.morse@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Will Deacon <will@kernel.org>, Gavin Shan <gshan@redhat.com>,
Mark Rutland <mark.rutland@arm.com>,
Raghavendra Rao Ananta <rananta@google.com>,
D Scott Phillips <scott@os.amperecomputing.com>,
linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH] KVM: arm64: Workaround for Ampere AC03_CPU_36 (exception taken to an incorrect EL)
Date: Sun, 07 Jan 2024 11:37:41 +0000 [thread overview]
Message-ID: <86cyud9xx6.wl-maz@kernel.org> (raw)
In-Reply-To: <ZZmS32lXXlULIArw@linux.dev>
On Sat, 06 Jan 2024 17:50:23 +0000,
Oliver Upton <oliver.upton@linux.dev> wrote:
>
> On Sat, Jan 06, 2024 at 12:13:09PM +0000, Marc Zyngier wrote:
>
> [...]
>
> > > From 265cb193190c13c651d8e008d34d1d18505d4804 Mon Sep 17 00:00:00 2001
> > > From: Oliver Upton <oliver.upton@linux.dev>
> > > Date: Fri, 5 Jan 2024 23:18:14 +0000
> > > Subject: [PATCH] KVM: arm64: Mitigate AmpereOne erratum AC03_CPU_36
> > >
> > > The AmpereOne design suffers from an erratum where if an asynchronous
> > > exception arrives while EL2 is modifying hypervisor exception controls
> > > (i.e. HCR_EL2, SCTLR_EL2) the PE may take an invalid exception to
> > > another EL.
> >
> > Same questions about SCTLR_EL2 and the notion of "another EL".
>
> I've got the same questions :) This is just a rewording of Ampere's
> erratum description.
>
> https://amperecomputing.com/customer-connect/products/AmpereOne-device-documentation
Huh. That's full of... not a lot.
> > Other than the passing comments, I'm OK with this patch. However, I am
> > very worried that this is only the start of a very long game of
> > whack-a-mole, because there is no actual documentation on what goes
> > wrong.
> >
> > For example, we have plenty of writes to SCTLR_EL2 (using the
> > SCTLR_EL1 alias if running VHE) for MTE. Are any of those affected?
> >
> > Short of having some solid handle on what is happening, I don't see
> > how we can promise to support this system.
>
> Completely agree. At least on the AmpereOne machines I have access to
> this seems to do the trick, but that observation is no replacement for
> full documentation.
Indeed. The document you quoted acknowledges that there are issues
(one step up from the previous situation), but this is not enough to
independently develop a workaround that will survive the test of time.
For example, AC03_CPU_39 doesn't even list the failing encodings,
which may lead to real funnies if these encodings get used at some
point.
M.
--
Without deviation from the norm, progress is not possible.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2024-01-07 11:37 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-05 21:32 [RFC PATCH] KVM: arm64: Workaround for Ampere AC03_CPU_36 (exception taken to an incorrect EL) Ilkka Koskinen
2024-01-05 21:32 ` Ilkka Koskinen
2024-01-05 23:53 ` Oliver Upton
2024-01-05 23:53 ` Oliver Upton
2024-01-06 12:13 ` Marc Zyngier
2024-01-06 12:13 ` Marc Zyngier
2024-01-06 17:50 ` Oliver Upton
2024-01-06 17:50 ` Oliver Upton
2024-01-07 11:37 ` Marc Zyngier [this message]
2024-01-07 11:37 ` Marc Zyngier
2024-01-09 20:29 ` D Scott Phillips
2024-01-09 20:29 ` D Scott Phillips
2024-01-11 1:17 ` D Scott Phillips
2024-01-11 1:17 ` D Scott Phillips
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=86cyud9xx6.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=gshan@redhat.com \
--cc=ilkka@os.amperecomputing.com \
--cc=james.morse@arm.com \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=oliver.upton@linux.dev \
--cc=rananta@google.com \
--cc=scott@os.amperecomputing.com \
--cc=suzuki.poulose@arm.com \
--cc=will@kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.