On Tue, 10 Sep 2024 10:47:46 +0100, Will Deacon <will@xxxxxxxxxx> wrote: > > On Tue, Sep 10, 2024 at 10:08:49AM +0100, Marc Zyngier wrote: > > On Tue, 10 Sep 2024 09:50:16 +0100, > > Anastasia Belova <abelova@xxxxxxxxxxxxx> wrote: > > > > > > Add explicit casting to prevent expantion of 32th bit of > > > u32 into highest half of u64 in several places. > > > > > > For example, in inject_abt64: > > > ESR_ELx_EC_DABT_LOW << ESR_ELx_EC_SHIFT = 0x24 << 26. > > > This operation's result is int with 1 in 32th bit. > > > While casting this value into u64 (esr is u64) 1 > > > fills 32 highest bits. > > > > > > Found by Linux Verification Center (linuxtesting.org) with SVACE. > > > > > > Fixes: aa8eff9bfbd5 ("arm64: KVM: fault injection into a guest") > > > Signed-off-by: Anastasia Belova <abelova@xxxxxxxxxxxxx> > > > > nit: the subject line is misleading, as this doesn't only affect KVM, > > but the whole of the arm64 port (the exception classes form a generic > > architectural construct). > > Weird, this v2 landed in my spam for some reason. > > > This also probably deserve a Cc stable. > > > > Will, Catalin: I'm happy to queue this in the KVM tree, but if you are > > taking it directly: > > > > Acked-by: Marc Zyngier <maz@xxxxxxxxxx> > > > I can take it via arm64. I assume it's ok to land in v6.12 (with the cc: > stable), or is there an urgency to landing this in v6.11? It looks it > was found using verification tools, rather than because of an actual > issue affecting users. Yup, 6.12 is just fine. It would only affect ESR encodings that have an ISS2 in the top 32 bits, and that's only a very small number of features, most of which don't exist in HW yet. Thanks, M. -- Without deviation from the norm, progress is not possible.