RE: [PATCH v2 1/1] KVM: arm64: allow the VM to select DEVICE_* and NORMAL_NC for IO memory

From: Shameerali Kolothum Thodi
Date: Tue Dec 05 2023 - 09:17:01 EST




> -----Original Message-----
> From: Catalin Marinas <catalin.marinas@xxxxxxx>
> Sent: Tuesday, December 5, 2023 11:41 AM
> To: Marc Zyngier <maz@xxxxxxxxxx>
> Cc: ankita@xxxxxxxxxx; Shameerali Kolothum Thodi
> <shameerali.kolothum.thodi@xxxxxxxxxx>; jgg@xxxxxxxxxx;
> oliver.upton@xxxxxxxxx; suzuki.poulose@xxxxxxx; yuzenghui
> <yuzenghui@xxxxxxxxxx>; will@xxxxxxxxxx; ardb@xxxxxxxxxx; akpm@linux-
> foundation.org; gshan@xxxxxxxxxx; aniketa@xxxxxxxxxx; cjia@xxxxxxxxxx;
> kwankhede@xxxxxxxxxx; targupta@xxxxxxxxxx; vsethi@xxxxxxxxxx;
> acurrid@xxxxxxxxxx; apopple@xxxxxxxxxx; jhubbard@xxxxxxxxxx;
> danw@xxxxxxxxxx; mochs@xxxxxxxxxx; kvmarm@xxxxxxxxxxxxxxx;
> kvm@xxxxxxxxxxxxxxx; lpieralisi@xxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [PATCH v2 1/1] KVM: arm64: allow the VM to select DEVICE_*
> and NORMAL_NC for IO memory
>
> + Lorenzo, he really needs to be on this thread.
>
> On Tue, Dec 05, 2023 at 09:21:28AM +0000, Marc Zyngier wrote:
> > On Tue, 05 Dec 2023 03:30:15 +0000,
> > <ankita@xxxxxxxxxx> wrote:
> > > From: Ankit Agrawal <ankita@xxxxxxxxxx>
> > >
> > > Currently, KVM for ARM64 maps at stage 2 memory that is considered
> device
> > > (i.e. it is not RAM) with DEVICE_nGnRE memory attributes; this setting
> > > overrides (as per the ARM architecture [1]) any device MMIO mapping
> > > present at stage 1, resulting in a set-up whereby a guest operating
> > > system cannot determine device MMIO mapping memory attributes on
> its
> > > own but it is always overridden by the KVM stage 2 default.
> [...]
> > Despite the considerable increase in the commit message length, a
> > number of questions are left unanswered:
> >
> > - Shameer reported a regression on non-FWB systems, breaking device
> > assignment:
> >
> >
> https://lore.kernel.org/all/af13ed63dc9a4f26a6c958ebfa77d78a@xxxxxxxxx
> m/
>
> This referred to the first patch in the old series which was trying to
> make the Stage 2 cacheable based on the vma attributes. That patch has
> been dropped for now. It would be good if Shameer confirms this was the
> problem.
>

Yes, that was related to the first patch. We will soon test this on both FWB and
non-FWB platforms and report back.

Thanks,
Shameer