[PATCH 07/43] KVM: arm64: gic-v5: Create & manage VM and VPE tables
Sascha Bischoff
Sascha.Bischoff at arm.com
Fri May 1 09:42:17 PDT 2026
On Tue, 2026-04-28 at 15:54 +0100, Vladimir Murzin wrote:
> Hi Sascha,
>
> On 4/27/26 17:08, Sascha Bischoff wrote:
> > +
> > + if (virt_to_phys(l2_table) & ~GICV5_VMTEL1E_L2_ADDR) {
> > + kfree(l2_table);
> > + return -EINVAL;
> > + }
> > +
> > + vmt_info->l2.l2ptrs[l1_index] = l2_table;
> > +
> > + /* Alignment issue! */
> > + if (virt_to_phys(l2_table) & ~GICV5_VMTEL1E_L2_ADDR) {
> > + kfree(l2_table);
> > + return -EFAULT;
> > + }
> > +
> > + tmp = virt_to_phys(l2_table) & GICV5_VMTEL1E_L2_ADDR;
> > + WRITE_ONCE(vmt_info->l2.vmt_base[l1_index],
> > cpu_to_le64(tmp));
>
> It seems the same l2_table alignment calculated (and checked)
> multiple times...
Hi Vladimir,
Yeah, you are correct. I've dropped that. Given the comments on this
change in general, I'm going through and dropping much of the paranoia.
We should trust the allocator to give us sane alignments, so there's no
point in checking, masking, then writing. Same goes for the CMO side of
this - will go and re-work that to be more sane.
Thanks,
Sascha
>
> Cheers
> Vladimir
More information about the linux-arm-kernel
mailing list