On Thu, Dec 12, 2024 at 03:14:06PM +0000, Joey Gouly wrote: > From: James Morse <james.morse@xxxxxxx> > > commit 6685f5d572c22e1003e7c0d089afe1c64340ab1f upstream. > > commit 011e5f5bf529f ("arm64/cpufeature: Add remaining feature bits in > ID_AA64PFR0 register") exposed the MPAM field of AA64PFR0_EL1 to guests, > but didn't add trap handling. A previous patch supplied the missing trap > handling. > > Existing VMs that have the MPAM field of ID_AA64PFR0_EL1 set need to > be migratable, but there is little point enabling the MPAM CPU > interface on new VMs until there is something a guest can do with it. > > Clear the MPAM field from the guest's ID_AA64PFR0_EL1 and on hardware > that supports MPAM, politely ignore the VMMs attempts to set this bit. > > Guests exposed to this bug have the sanitised value of the MPAM field, > so only the correct value needs to be ignored. This means the field > can continue to be used to block migration to incompatible hardware > (between MPAM=1 and MPAM=5), and the VMM can't rely on the field > being ignored. > > Signed-off-by: James Morse <james.morse@xxxxxxx> > Co-developed-by: Joey Gouly <joey.gouly@xxxxxxx> > Signed-off-by: Joey Gouly <joey.gouly@xxxxxxx> > Reviewed-by: Gavin Shan <gshan@xxxxxxxxxx> > Tested-by: Shameer Kolothum <shameerali.kolothum.thodi@xxxxxxxxxx> > Reviewed-by: Marc Zyngier <maz@xxxxxxxxxx> > Link: https://lore.kernel.org/r/20241030160317.2528209-7-joey.gouly@xxxxxxx > Signed-off-by: Oliver Upton <oliver.upton@xxxxxxxxx> > [ joey: fixed up merge conflict, no ID_FILTERED macro in 6.6 ] > Signed-off-by: Joey Gouly <joey.gouly@xxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx # 6.6.x > Cc: Vitaly Chikunov <vt@xxxxxxxxxxxx> > Link: https://lore.kernel.org/linux-arm-kernel/20241202045830.e4yy3nkvxtzaybxk@xxxxxxxxxxxx/ > --- > > This fixes an issue seen when using KVM with a 6.6 host kernel, and > newer (6.13+) kernels in the guest. > > Tested with a stripped down version of set_id_regs from the original > patch series. What about 6.12.y? You can't just skip a stable tree, otherwise you will get a regression when you upgrade to 6.12.y, right? thanks, greg k-h