KVM_SYNC_GPRS, KVM_SYNC_ACRS, KVM_SYNC_CRS and KVM_SYNC_PREFIX are available since kernel 3.10. Since we already require at least kernel 3.15 in the s390x KVM code, we can also assume that the KVM_CAP_SYNC_REGS sync code is always possible for these registers, and remove the related checks and fallbacks via KVM_SET_REGS and KVM_GET_REGS.
v2: - Split the patch from v1 into two patches - Use a #define KVM_SYNC_REQUIRED_BITS for the required sync bits - Use memcpy() instead of for-loops for copying the registers Thomas Huth (2): target/s390x/kvm: Turn KVM_CAP_SYNC_REGS into a hard requirement target/s390x/kvm: Simplify the GPRs, ACRs, CRs and prefix synchronization code target/s390x/kvm/kvm.c | 120 ++++++++++++----------------------------- 1 file changed, 33 insertions(+), 87 deletions(-) -- 2.41.0