[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1ec14d13-7db6-4642-a14b-db8ae362e594@sirena.org.uk>
Date: Thu, 3 Oct 2024 15:50:47 +0100
From: Mark Brown <broonie@...nel.org>
To: Marc Zyngier <maz@...nel.org>
Cc: Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>, Jonathan Corbet <corbet@....net>,
Andrew Morton <akpm@...ux-foundation.org>,
Oliver Upton <oliver.upton@...ux.dev>,
James Morse <james.morse@....com>,
Suzuki K Poulose <suzuki.poulose@....com>,
Arnd Bergmann <arnd@...db.de>, Oleg Nesterov <oleg@...hat.com>,
Eric Biederman <ebiederm@...ssion.com>,
Shuah Khan <shuah@...nel.org>,
"Rick P. Edgecombe" <rick.p.edgecombe@...el.com>,
Deepak Gupta <debug@...osinc.com>, Ard Biesheuvel <ardb@...nel.org>,
Szabolcs Nagy <Szabolcs.Nagy@....com>, Kees Cook <kees@...nel.org>,
"H.J. Lu" <hjl.tools@...il.com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
Florian Weimer <fweimer@...hat.com>,
Christian Brauner <brauner@...nel.org>,
Thiago Jung Bauermann <thiago.bauermann@...aro.org>,
Ross Burton <ross.burton@....com>,
David Spickett <david.spickett@....com>,
Yury Khrustalev <yury.khrustalev@....com>,
Wilco Dijkstra <wilco.dijkstra@....com>,
linux-arm-kernel@...ts.infradead.org, linux-doc@...r.kernel.org,
kvmarm@...ts.linux.dev, linux-fsdevel@...r.kernel.org,
linux-arch@...r.kernel.org, linux-mm@...ck.org,
linux-kselftest@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-riscv@...ts.infradead.org
Subject: Re: [PATCH v13 16/40] KVM: arm64: Manage GCS access and registers
for guests
On Wed, Oct 02, 2024 at 08:29:28PM +0100, Marc Zyngier wrote:
> Mark Brown <broonie@...nel.org> wrote:
> > They are, though really they should UNDEF if GCS isn't there (which I
> > had thought was what you were referencing here). Equally we only have
> > traps for a subset of GCS instructions and it's not like there aren't a
> > whole bunch of untrappable extensions anyway so it's not clear it's
> > worth the effort just for that.
> If the encodings UNDEF when GCS is not implemented (i.e. they are not
> in the NOP space), then all trapable instructions should absolutely
> UNDEF (and yes, it is worth the effort, even if it is only to
> demonstrate that the architecture is sub-par).
Yes, see DDI0487 K.a C5.9. If you're concerned about being unable to
generate UNDEFs there's a rather large set of existing extensions where
that's not possible, most of the hwcaps in the hwcap selftest that don't
set sigill_reliable but do have a SIGILL generator for a start.
> So I expect the next version to handle traps for GCSPUSHX, GCSPOPX,
> GCSPUSHM, GCSSTR and GCSSTTR when GCS isn't enabled.
OK, I already had that change locally after your first message.
> I'm also pretty sure this is missing some form of sanitisation for
> PSTATE.EXLOCK, and looking at the pseudocode, you seem to be missing
> the handling of that bit on exception injection.
Ah, yes - I think I see the missing exception injection handling in
enter_exception64(). I'm not seeing what you're referencing with
sanitisation though, could you give me some more specific pointers
please?
Download attachment "signature.asc" of type "application/pgp-signature" (489 bytes)
Powered by blists - more mailing lists