[PATCH stable 6.1.y 1/2] KVM: arm64: Prevent the donation of no-map pages
Jitindar Singh, Suraj
surajjs at amazon.com
Thu Sep 21 15:22:54 PDT 2023
On Thu, 2023-09-21 at 08:13 +0100, Marc Zyngier wrote:
> On Wed, 20 Sep 2023 20:27:28 +0100,
> Suraj Jitindar Singh <surajjs at amazon.com> wrote:
> >
> > From: Quentin Perret <qperret at google.com>
> >
> > commit 43c1ff8b75011bc3e3e923adf31ba815864a2494 upstream.
> >
> > Memory regions marked as "no-map" in the host device-tree routinely
> > include TrustZone carev-outs and DMA pools. Although donating such
> > pages
> > to the hypervisor may not breach confidentiality, it could be used
> > to
> > corrupt its state in uncontrollable ways. To prevent this, let's
> > block
> > host-initiated memory transitions targeting "no-map" pages
> > altogether in
> > nVHE protected mode as there should be no valid reason to do this
> > in
> > current operation.
> >
> > Thankfully, the pKVM EL2 hypervisor has a full copy of the host's
> > list
> > of memblock regions, so we can easily check for the presence of the
> > MEMBLOCK_NOMAP flag on a region containing pages being donated from
> > the
> > host.
> >
> > Reviewed-by: Philippe Mathieu-Daudé <philmd at linaro.org>
> > Tested-by: Vincent Donnefort <vdonnefort at google.com>
> > Signed-off-by: Quentin Perret <qperret at google.com>
> > Signed-off-by: Will Deacon <will at kernel.org>
> > Signed-off-by: Marc Zyngier <maz at kernel.org>
> > Link:
> > https://lore.kernel.org/r/20221110190259.26861-8-will@kernel.org
> > [ bp: clean ]
>
> What is this?
Noting any details about the backport. In this case it was a clean
backport.
>
> > Signed-off-by: Suraj Jitindar Singh <surajjs at amazon.com>
>
> What is the rationale for backporting this? It wasn't tagged as Cc:
> to
> stable for a reason: pKVM isn't functional upstream, and won't be for
> the next couple of cycles *at least*.
>
> So at it stands, I'm against such a backport.
>
The 2 patches were backported to address CVE-2023-21264.
This one provides context for the proceeding patch.
I wasn't aware that it's non functional. Does this mean that the code
won't be compiled or just that it can't actually be run currently from
the upstream codebase?
I guess I'm trying to understand if the conditions of the CVE are a
real concern even if it isn't technically functional.
Thanks
> Thanks,
>
> M.
>
More information about the linux-arm-kernel
mailing list