target/i386: sev: Remove redundant handle field
The user can explicitly specify a handle via the "handle" property wired to SevGuestState::handle. That gets passed to the KVM_SEV_LAUNCH_START ioctl() which may update it, the final value being copied back to both SevGuestState::handle and SEVState::handle. AFAICT, nothing will be looking SEVState::handle before it and SevGuestState::handle have been updated from the ioctl(). So, remove the field and just use SevGuestState::handle directly. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20200604064219.436242-9-david@gibson.dropbear.id.au> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
0bd1527774
commit
cf504cd67b
|
@ -40,7 +40,6 @@ struct SEVState {
|
|||
uint8_t api_minor;
|
||||
uint8_t build_id;
|
||||
uint64_t me_mask;
|
||||
uint32_t handle;
|
||||
int sev_fd;
|
||||
SevState state;
|
||||
gchar *measurement;
|
||||
|
@ -64,13 +63,13 @@ struct SevGuestState {
|
|||
/* configuration parameters */
|
||||
char *sev_device;
|
||||
uint32_t policy;
|
||||
uint32_t handle;
|
||||
char *dh_cert_file;
|
||||
char *session_file;
|
||||
uint32_t cbitpos;
|
||||
uint32_t reduced_phys_bits;
|
||||
|
||||
/* runtime state */
|
||||
uint32_t handle;
|
||||
SEVState state;
|
||||
};
|
||||
|
||||
|
@ -398,7 +397,7 @@ sev_get_info(void)
|
|||
info->build_id = sev_guest->state.build_id;
|
||||
info->policy = sev_guest->policy;
|
||||
info->state = sev_guest->state.state;
|
||||
info->handle = sev_guest->state.handle;
|
||||
info->handle = sev_guest->handle;
|
||||
}
|
||||
|
||||
return info;
|
||||
|
@ -517,8 +516,7 @@ sev_launch_start(SevGuestState *sev)
|
|||
|
||||
start = g_new0(struct kvm_sev_launch_start, 1);
|
||||
|
||||
start->handle = object_property_get_int(OBJECT(sev), "handle",
|
||||
&error_abort);
|
||||
start->handle = sev->handle;
|
||||
start->policy = sev->policy;
|
||||
if (sev->session_file) {
|
||||
if (sev_read_file_base64(sev->session_file, &session, &sz) < 0) {
|
||||
|
@ -544,10 +542,8 @@ sev_launch_start(SevGuestState *sev)
|
|||
goto out;
|
||||
}
|
||||
|
||||
object_property_set_int(OBJECT(sev), start->handle, "handle",
|
||||
&error_abort);
|
||||
sev_set_guest_state(sev, SEV_STATE_LAUNCH_UPDATE);
|
||||
s->handle = start->handle;
|
||||
sev->handle = start->handle;
|
||||
ret = 0;
|
||||
|
||||
out:
|
||||
|
|
Loading…
Reference in a new issue