• Marc Orr's avatar
    kvm: x86: Dynamically allocate guest_fpu · b666a4b6
    Marc Orr authored
    Previously, the guest_fpu field was embedded in the kvm_vcpu_arch
    struct. Unfortunately, the field is quite large, (e.g., 4352 bytes on my
    current setup). This bloats the kvm_vcpu_arch struct for x86 into an
    order 3 memory allocation, which can become a problem on overcommitted
    machines. Thus, this patch moves the fpu state outside of the
    kvm_vcpu_arch struct.
    
    With this patch applied, the kvm_vcpu_arch struct is reduced to 15168
    bytes for vmx on my setup when building the kernel with kvmconfig.
    Suggested-by: default avatarDave Hansen <dave.hansen@intel.com>
    Signed-off-by: default avatarMarc Orr <marcorr@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    b666a4b6
svm.c 183 KB