Re: [GIT PULL] KVM changes for Linux 6.9 merge window

From: Oliver Upton
Date: Fri Mar 15 2024 - 19:32:28 EST


On Fri, Mar 15, 2024 at 03:28:29PM -0700, Linus Torvalds wrote:
> The immediate cause of the failure is commit b80b701d5a67 ("KVM:
> arm64: Snapshot all non-zero RES0/RES1 sysreg fields for later
> checking") but I hope it worked at *some* point. I can't see how.

Looks like commit fdd867fe9b32 ("arm64/sysreg: Add register fields for
ID_AA64DFR1_EL1") changed the register definition that tripped the
BUILD_BUG_ON().

But it'd be *wildly* unfair to blame that, the KVM assertions are added
out of fear of new register definitions breaking our sysreg emulation.

> I would guess / assume that commit cfc680bb04c5 ("arm64: sysreg: Add
> layout for ID_AA64MMFR4_EL1") is also involved, but having recoiled in
> horror from the awk script, I really can't even begin to guess at what
> is going on.
>
> Bringing in other people who hopefully can sort this out.

At this point I'm heavily biased towards just dropping the KVM checks
for now than attempt a fix-forward. We can work things out better with
arm64 folks next release.

So unless anyone screams, I say we revert:

99101dda29e3 ("KVM: arm64: Make build-time check of RES0/RES1 bits optional")
891766581dea ("KVM: arm64: Add debugfs file for guest's ID registers")

and do so atomically to avoid any further breakage of bisection.

--
Thanks,
Oliver