This is yet another version of ondemand nested state allocation. In this version I adoped the suggestion of Sean Christopherson to return make EFER write return a negative error which then should propogate to the userspace. So I fixed the WRMSR code to actually obey this (#GP on positive return value, exit to userspace when negative error value, and success on 0 error value, and fixed one user (xen) that returned negative error code on failures. The XEN patch is only compile tested. The rest were tested by always returning -ENOMEM from svm_allocate_nested. Best regards, Maxim Levitsky Maxim Levitsky (4): KVM: x86: xen_hvm_config cleanup return values KVM: x86: report negative values from wrmsr to userspace KVM: x86: allow kvm_x86_ops.set_efer to return a value KVM: nSVM: implement ondemand allocation of the nested state arch/x86/include/asm/kvm_host.h | 2 +- arch/x86/kvm/emulate.c | 7 ++-- arch/x86/kvm/svm/nested.c | 42 ++++++++++++++++++++++++ arch/x86/kvm/svm/svm.c | 58 +++++++++++++++++++-------------- arch/x86/kvm/svm/svm.h | 8 ++++- arch/x86/kvm/vmx/vmx.c | 9 +++-- arch/x86/kvm/x86.c | 36 ++++++++++---------- 7 files changed, 113 insertions(+), 49 deletions(-) -- 2.26.2