On Thu, Feb 22, 2024 at 02:31:38PM +0000, Marc Zyngier wrote: > On Thu, 22 Feb 2024 13:11:59 +0000, > Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > > > On 2/22/24 12:40, Stephen Rothwell wrote: > > >> This fails because https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git/commit/?id=fdd867fe9b32 > > >> added new fields to that register (ID_AA64DFR1_EL1) > > >> > > >> and commit b80b701d5a6 ("KVM: arm64: Snapshot all non-zero RES0/RES1 sysreg fields for later checking") > > >> took a snapshot of the fields, so the RES0 (reserved 0) bits don't match anymore. > > >> > > >> Not sure how to resolve it in the git branches though. > > > > > > Thanks. I will apply this patch to the merge of the kvm-arm tree from > > > tomorrow (and at the end of today's tree). > > > > Marc, Oliver, can you get a topic branch from Catalin and friends for > > this sysreg patch, and apply the fixup directly to the kvm-arm branch > > in the merge commit? > > > > Not _necessary_, as I can always ask Linus to do the fixup, but > > generally he prefers to have this sorted out by the maintainers if it > > is detected by linux-next. > > I think that's not the correct thing to do at this time. I should have > timed the introduction of these checks a bit later, after the merge > window. > > But more to the point, the proposed patch is also not the best thing > to merge, because it hides that there is a discrepancy between what > the architecture describes, and what KVM knows. I really want to know > about it, or it will be yet another bug that we wont detect easily. > Specially for ID_AA64DFR*_EL1 which are a bloody mine-field. > > So I'd rather we make the check optional, and we'll play catch up for > a bit longer. Something like the patch below. > > Oliver, do you mind queuing this ASAP (also pushed out to my dev > branch)? > > Thanks, > > M. > > From 85d861a6ca055c7681c826c580e7c90d74c26ac5 Mon Sep 17 00:00:00 2001 > From: Marc Zyngier <maz@xxxxxxxxxx> > Date: Thu, 22 Feb 2024 14:12:09 +0000 > Subject: [PATCH] KVM: arm64: Make build-time check of RES0/RES1 bits optional > > In order to ease the transition towards a state of absolute > paranoia where all RES0/RES1 bits gets checked against what > KVM know of them, make the checks optional and garded by a > config symbol (CONFIG_KVM_ARM64_RES_BITS_PARANOIA) default to n. > > Signed-off-by: Marc Zyngier <maz@xxxxxxxxxx> Applied as commit 99101dda29e3 ("KVM: arm64: Make build-time check of RES0/RES1 bits optional") on the kvmarm/next branch. -- Thanks, Oliver