On Thu, Nov 05, 2020 at 10:10:18AM +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. > > v3: > - Improve commit messages [Dave] > - Add new patch to consolidate REG_HIDDEN* flags [Dave] > > v2: > - CC stable [Marc] > - Only one RAZ flag is enough [Marc] > - Move id_visibility() up by read_id_reg() since they'll likely > be maintained together [drew] > > > Andrew Jones (4): > KVM: arm64: Don't hide ID registers from userspace > KVM: arm64: Consolidate REG_HIDDEN_GUEST/USER > KVM: arm64: Check RAZ visibility in ID register accessors > KVM: arm64: Remove AA64ZFR0_EL1 accessors > > arch/arm64/kvm/sys_regs.c | 108 ++++++++++++-------------------------- > arch/arm64/kvm/sys_regs.h | 16 +++--- > 2 files changed, 41 insertions(+), 83 deletions(-) Thanks for the updates. Looks like I missed the opportunity to review this, but just for the record (even if it doesn't appear in the tree): Reviewed-by: Dave Martin <Dave.Martin@xxxxxxx> Cheers ---Dave _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm