From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Dov Murik <dovmurik@linux.ibm.com>
Cc: "Brijesh Singh" <brijesh.singh@amd.com>,
"Eduardo Habkost" <ehabkost@redhat.com>,
"Sergio Lopez" <slp@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"James Bottomley" <jejb@linux.ibm.com>,
qemu-devel@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>
Subject: Re: [PATCH 2/2] target/i386/sev: Use local variable for kvm_sev_launch_measure
Date: Mon, 11 Oct 2021 18:57:57 +0100 [thread overview]
Message-ID: <YWR7JT6XcqEL6R4B@work-vm> (raw)
In-Reply-To: <20211011173026.2454294-3-dovmurik@linux.ibm.com>
* Dov Murik (dovmurik@linux.ibm.com) wrote:
> The struct kvm_sev_launch_measure has a constant and small size, and
> therefore we can use a regular local variable for it instead of
> allocating and freeing heap memory for it.
>
> Signed-off-by: Dov Murik <dovmurik@linux.ibm.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
> ---
> target/i386/sev.c | 16 +++++++---------
> 1 file changed, 7 insertions(+), 9 deletions(-)
>
> diff --git a/target/i386/sev.c b/target/i386/sev.c
> index 0062566c71..eede07f11d 100644
> --- a/target/i386/sev.c
> +++ b/target/i386/sev.c
> @@ -729,7 +729,7 @@ sev_launch_get_measure(Notifier *notifier, void *unused)
> SevGuestState *sev = sev_guest;
> int ret, error;
> g_autofree guchar *data = NULL;
> - g_autofree struct kvm_sev_launch_measure *measurement = NULL;
> + struct kvm_sev_launch_measure measurement = {};
>
> if (!sev_check_state(sev, SEV_STATE_LAUNCH_UPDATE)) {
> return;
> @@ -743,23 +743,21 @@ sev_launch_get_measure(Notifier *notifier, void *unused)
> }
> }
>
> - measurement = g_new0(struct kvm_sev_launch_measure, 1);
> -
> /* query the measurement blob length */
> ret = sev_ioctl(sev->sev_fd, KVM_SEV_LAUNCH_MEASURE,
> - measurement, &error);
> - if (!measurement->len) {
> + &measurement, &error);
> + if (!measurement.len) {
> error_report("%s: LAUNCH_MEASURE ret=%d fw_error=%d '%s'",
> __func__, ret, error, fw_error_to_str(errno));
> return;
> }
>
> - data = g_new0(guchar, measurement->len);
> - measurement->uaddr = (unsigned long)data;
> + data = g_new0(guchar, measurement.len);
> + measurement.uaddr = (unsigned long)data;
>
> /* get the measurement blob */
> ret = sev_ioctl(sev->sev_fd, KVM_SEV_LAUNCH_MEASURE,
> - measurement, &error);
> + &measurement, &error);
> if (ret) {
> error_report("%s: LAUNCH_MEASURE ret=%d fw_error=%d '%s'",
> __func__, ret, error, fw_error_to_str(errno));
> @@ -769,7 +767,7 @@ sev_launch_get_measure(Notifier *notifier, void *unused)
> sev_set_guest_state(sev, SEV_STATE_LAUNCH_SECRET);
>
> /* encode the measurement value and emit the event */
> - sev->measurement = g_base64_encode(data, measurement->len);
> + sev->measurement = g_base64_encode(data, measurement.len);
> trace_kvm_sev_launch_measurement(sev->measurement);
> }
>
> --
> 2.25.1
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2021-10-11 18:11 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-11 17:30 [PATCH 0/2] target/i386/sev: Replace malloc with local variables Dov Murik
2021-10-11 17:30 ` [PATCH 1/2] target/i386/sev: Use local variable for kvm_sev_launch_start Dov Murik
2021-10-11 17:55 ` Dr. David Alan Gilbert
2021-10-11 17:30 ` [PATCH 2/2] target/i386/sev: Use local variable for kvm_sev_launch_measure Dov Murik
2021-10-11 17:57 ` Dr. David Alan Gilbert [this message]
2021-10-12 11:02 ` [PATCH 0/2] target/i386/sev: Replace malloc with local variables Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YWR7JT6XcqEL6R4B@work-vm \
--to=dgilbert@redhat.com \
--cc=brijesh.singh@amd.com \
--cc=dovmurik@linux.ibm.com \
--cc=ehabkost@redhat.com \
--cc=jejb@linux.ibm.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=slp@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.