Re: [PATCH v3 4/6] arm64/kvm: Avoid invalid physical addresses to signal owner updates

From: Ard Biesheuvel
Date: Thu Dec 12 2024 - 06:44:58 EST


On Thu, 12 Dec 2024 at 12:33, Quentin Perret <qperret@xxxxxxxxxx> wrote:
>
> On Thursday 12 Dec 2024 at 09:18:46 (+0100), Ard Biesheuvel wrote:
> > @@ -908,6 +892,9 @@ static bool stage2_leaf_mapping_allowed(const struct kvm_pgtable_visit_ctx *ctx,
> > if (data->force_pte && ctx->level < KVM_PGTABLE_LAST_LEVEL)
> > return false;
> >
> > + if (data->annotation && ctx->level == KVM_PGTABLE_LAST_LEVEL)
> > + return true;
> > +
>
> I don't think it's a problem, but what's the rationale for checking
> ctx->level here? The data->force_pte logic should already do this for us
> and be somewhat orthogonal to data->annotation, no?
>

So you are saying this could be

> > + if (data->annotation)
> > + return true;

right? That hides the fact that we expect data->annotation to imply
data->force_pte, but other than that, it should work the same, yes.

> Either way, the patch looks good to me
>
> Reviewed-by: Quentin Perret <qperret@xxxxxxxxxx>
>

Thanks!