mirror of https://github.com/xemu-project/xemu.git
i386/sev: Reorder struct declarations
Move the declaration of PaddedSevHashTable before SevSnpGuest so we can add a new such field to the latter. No functional change intended. Signed-off-by: Dov Murik <dovmurik@linux.ibm.com> Signed-off-by: Michael Roth <michael.roth@amd.com> Signed-off-by: Pankaj Gupta <pankaj.gupta@amd.com> Message-ID: <20240530111643.1091816-23-pankaj.gupta@amd.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
06cbd66cec
commit
cc483bf911
|
@ -46,6 +46,48 @@ OBJECT_DECLARE_TYPE(SevCommonState, SevCommonStateClass, SEV_COMMON)
|
|||
OBJECT_DECLARE_TYPE(SevGuestState, SevCommonStateClass, SEV_GUEST)
|
||||
OBJECT_DECLARE_TYPE(SevSnpGuestState, SevCommonStateClass, SEV_SNP_GUEST)
|
||||
|
||||
/* hard code sha256 digest size */
|
||||
#define HASH_SIZE 32
|
||||
|
||||
typedef struct QEMU_PACKED SevHashTableEntry {
|
||||
QemuUUID guid;
|
||||
uint16_t len;
|
||||
uint8_t hash[HASH_SIZE];
|
||||
} SevHashTableEntry;
|
||||
|
||||
typedef struct QEMU_PACKED SevHashTable {
|
||||
QemuUUID guid;
|
||||
uint16_t len;
|
||||
SevHashTableEntry cmdline;
|
||||
SevHashTableEntry initrd;
|
||||
SevHashTableEntry kernel;
|
||||
} SevHashTable;
|
||||
|
||||
/*
|
||||
* Data encrypted by sev_encrypt_flash() must be padded to a multiple of
|
||||
* 16 bytes.
|
||||
*/
|
||||
typedef struct QEMU_PACKED PaddedSevHashTable {
|
||||
SevHashTable ht;
|
||||
uint8_t padding[ROUND_UP(sizeof(SevHashTable), 16) - sizeof(SevHashTable)];
|
||||
} PaddedSevHashTable;
|
||||
|
||||
QEMU_BUILD_BUG_ON(sizeof(PaddedSevHashTable) % 16 != 0);
|
||||
|
||||
#define SEV_INFO_BLOCK_GUID "00f771de-1a7e-4fcb-890e-68c77e2fb44e"
|
||||
typedef struct __attribute__((__packed__)) SevInfoBlock {
|
||||
/* SEV-ES Reset Vector Address */
|
||||
uint32_t reset_addr;
|
||||
} SevInfoBlock;
|
||||
|
||||
#define SEV_HASH_TABLE_RV_GUID "7255371f-3a3b-4b04-927b-1da6efa8d454"
|
||||
typedef struct QEMU_PACKED SevHashTableDescriptor {
|
||||
/* SEV hash table area guest address */
|
||||
uint32_t base;
|
||||
/* SEV hash table area size (in bytes) */
|
||||
uint32_t size;
|
||||
} SevHashTableDescriptor;
|
||||
|
||||
struct SevCommonState {
|
||||
X86ConfidentialGuest parent_obj;
|
||||
|
||||
|
@ -128,48 +170,6 @@ typedef struct SevLaunchUpdateData {
|
|||
|
||||
static QTAILQ_HEAD(, SevLaunchUpdateData) launch_update;
|
||||
|
||||
#define SEV_INFO_BLOCK_GUID "00f771de-1a7e-4fcb-890e-68c77e2fb44e"
|
||||
typedef struct __attribute__((__packed__)) SevInfoBlock {
|
||||
/* SEV-ES Reset Vector Address */
|
||||
uint32_t reset_addr;
|
||||
} SevInfoBlock;
|
||||
|
||||
#define SEV_HASH_TABLE_RV_GUID "7255371f-3a3b-4b04-927b-1da6efa8d454"
|
||||
typedef struct QEMU_PACKED SevHashTableDescriptor {
|
||||
/* SEV hash table area guest address */
|
||||
uint32_t base;
|
||||
/* SEV hash table area size (in bytes) */
|
||||
uint32_t size;
|
||||
} SevHashTableDescriptor;
|
||||
|
||||
/* hard code sha256 digest size */
|
||||
#define HASH_SIZE 32
|
||||
|
||||
typedef struct QEMU_PACKED SevHashTableEntry {
|
||||
QemuUUID guid;
|
||||
uint16_t len;
|
||||
uint8_t hash[HASH_SIZE];
|
||||
} SevHashTableEntry;
|
||||
|
||||
typedef struct QEMU_PACKED SevHashTable {
|
||||
QemuUUID guid;
|
||||
uint16_t len;
|
||||
SevHashTableEntry cmdline;
|
||||
SevHashTableEntry initrd;
|
||||
SevHashTableEntry kernel;
|
||||
} SevHashTable;
|
||||
|
||||
/*
|
||||
* Data encrypted by sev_encrypt_flash() must be padded to a multiple of
|
||||
* 16 bytes.
|
||||
*/
|
||||
typedef struct QEMU_PACKED PaddedSevHashTable {
|
||||
SevHashTable ht;
|
||||
uint8_t padding[ROUND_UP(sizeof(SevHashTable), 16) - sizeof(SevHashTable)];
|
||||
} PaddedSevHashTable;
|
||||
|
||||
QEMU_BUILD_BUG_ON(sizeof(PaddedSevHashTable) % 16 != 0);
|
||||
|
||||
static Error *sev_mig_blocker;
|
||||
|
||||
static const char *const sev_fw_errlist[] = {
|
||||
|
|
Loading…
Reference in New Issue