Re: [PATCH 6/8] KVM: arm64: Propagate stage-2 map failure on host->guest donation

Fuad Tabba
2026-04-28T17:03:51Z

On Tue, 28 Apr 2026 at 17:57, Will Deacon <will@kernel.org> wrote:
>
> On Tue, Apr 28, 2026 at 03:36:43PM +0100, Fuad Tabba wrote:
> > On Tue, 28 Apr 2026 at 14:45, Will Deacon <will@kernel.org> wrote:
> > V2 will drop two patches (in addition to the HCR_EL2 one), and will be
> > as follows:
> >
> > 1. host->guest share and host->guest donate (kept, rewritten): add a
> > memcache-sufficiency check during the existing pre-check pass
> > (option 1) and return -ENOMEM cleanly without touching any state.
> > Restore the WARN_ON() on the subsequent kvm_pgtable_stage2_map() —
> > with the topup precheck it asserts an established invariant rather
> > than ignoring a reachable error.
> >
> > For the single-page donate, "topped up" is
> > KVM_PGTABLE_LAST_LEVEL - vm->pgt.start_level (mirroring host EL1's
> > kvm_mmu_cache_min_pages). For multi-page share I plan to use the
> > conservative nr_pages * (LAST_LEVEL - start_level) bound and flag it
> > as conservative in the commit message; happy to compute a tighter
> > alignment-aware bound if you'd prefer.
>
> For now, I think we should just check against kvm_mmu_cache_min_pages()
> because that's what the host is using.

Ack,
/fuad
>
> Cheers,
>
> Will