On Mon, Nov 02, 2020 at 07:50:34PM +0100, Andrew Jones wrote: > 张东旭 <xu910121@xxxxxxxx> reported a regression seen with CentOS > when migrating from an old kernel to a new one. The problem was > that QEMU rejected the migration since KVM_GET_REG_LIST reported > a register was missing on the destination. Extra registers are OK > on the destination, but not missing ones. The regression reproduces > with upstream kernels when migrating from a 4.15 or later kernel, > up to one with commit 73433762fcae ("KVM: arm64/sve: System register > context switch and access support"), to a kernel that includes that > commit, e.g. the latest mainline (5.10-rc2). > > The first patch of this series is the fix. The next two patches, > which don't have any intended functional changes, allow ID_SANITISED > to be used for registers that flip between exposing features and > being RAZ, which allows some code to be removed. Is it worth updating Documentation/virt/kvm/api.rst to clarify the expected use during VM migrations, and the guarantees that are expected to hold between migratable kernel versions? Currently the specification is a mixture of "surely it's obvious" and "whatever makes QEMU work". I guess that caught me out, but I'll let others judge whether other people are likely to get similarly confused. [...] Cheers ---Dave _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm