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

From: Marc Zyngier
Date: Sun Jun 06 2021 - 06:38:33 EST


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.

M.
--
Jazz is not dead. It just smells funny...