Re: [PATCH v2 4/7] KVM: arm64: Unify MMIO and mem host stage-2 pools

From: Quentin Perret
Date: Mon Jun 07 2021 - 04:05:00 EST

On Sunday 06 Jun 2021 at 11:31:20 (+0100), Marc Zyngier wrote:
> On 2021-06-02 10:43, Quentin Perret wrote:
> > We currently maintain two separate memory pools for the host stage-2,
> > one for pages used in the page-table when mapping memory regions, and
> > the other to map MMIO regions. The former is large enough to map all of
> > memory with page granularity and the latter can cover an arbitrary
> > portion of IPA space, but allows to 'recycle' pages.
> >
> > However, this split makes accounting difficult to manage as pages at
> > intermediate levels of the page-table may be used to map both memory and
> > MMIO regions. Simplify the scheme by merging both pools into one. This
> > means we can now hit the -ENOMEM case in the memory abort path, but
> > we're still guaranteed forward-progress in the worst case by unmapping
> > MMIO regions. On the plus side this also means we can usually map a lot
> > more MMIO space at once if memory ranges happen to be mapped with block
> > mappings.
> >
> > Signed-off-by: Quentin Perret <qperret@xxxxxxxxxx>
> This patch fails to apply on top of -rc4. Did you use some more exotic
> base or, as I suspect, a development tree?
> Please check and respin the series if necessary.

I used kvmarm/next, but clearly an out-of-date one. I'll respin -- sorry
about that.