Skip to content
  • Paolo Bonzini's avatar
    b2f73a07
    sev/i386: Allow AP booting under SEV-ES · b2f73a07
    Paolo Bonzini authored
    
    
    When SEV-ES is enabled, it is not possible modify the guests register
    state after it has been initially created, encrypted and measured.
    
    Normally, an INIT-SIPI-SIPI request is used to boot the AP. However, the
    hypervisor cannot emulate this because it cannot update the AP register
    state. For the very first boot by an AP, the reset vector CS segment
    value and the EIP value must be programmed before the register has been
    encrypted and measured. Search the guest firmware for the guest for a
    specific GUID that tells Qemu the value of the reset vector to use.
    
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: "Michael S. Tsirkin" <mst@redhat.com>
    Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
    Cc: Richard Henderson <richard.henderson@linaro.org>
    Cc: Eduardo Habkost <ehabkost@redhat.com>
    Cc: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: default avatarTom Lendacky <thomas.lendacky@amd.com>
    Message-Id: <22db2bfb4d6551aed661a9ae95b4fdbef613ca21.1611682609.git.thomas.lendacky@amd.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    b2f73a07
    sev/i386: Allow AP booting under SEV-ES
    Paolo Bonzini authored
    
    
    When SEV-ES is enabled, it is not possible modify the guests register
    state after it has been initially created, encrypted and measured.
    
    Normally, an INIT-SIPI-SIPI request is used to boot the AP. However, the
    hypervisor cannot emulate this because it cannot update the AP register
    state. For the very first boot by an AP, the reset vector CS segment
    value and the EIP value must be programmed before the register has been
    encrypted and measured. Search the guest firmware for the guest for a
    specific GUID that tells Qemu the value of the reset vector to use.
    
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: "Michael S. Tsirkin" <mst@redhat.com>
    Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
    Cc: Richard Henderson <richard.henderson@linaro.org>
    Cc: Eduardo Habkost <ehabkost@redhat.com>
    Cc: Marcelo Tosatti <mtosatti@redhat.com>
    Signed-off-by: default avatarTom Lendacky <thomas.lendacky@amd.com>
    Message-Id: <22db2bfb4d6551aed661a9ae95b4fdbef613ca21.1611682609.git.thomas.lendacky@amd.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Loading