Re: [PATCH] sev: sev_get_attestation_report use g_autofree
On 6/3/21 6:30 AM, Dr. David Alan Gilbert (git) wrote: > From: "Dr. David Alan Gilbert" > > Removes a whole bunch of g_free's and a goto. > > Signed-off-by: Dr. David Alan Gilbert Reviewed-by: Connor Kuehl
Re: [PATCH] sev: sev_get_attestation_report use g_autofree
On 6/3/21 6:30 AM, Dr. David Alan Gilbert (git) wrote: > From: "Dr. David Alan Gilbert" > > Removes a whole bunch of g_free's and a goto. > > Signed-off-by: Dr. David Alan Gilbert Reviewed-by: Brijesh Singh thanks > --- > target/i386/sev.c | 11 +++ > 1 file changed, 3 insertions(+), 8 deletions(-) > > diff --git a/target/i386/sev.c b/target/i386/sev.c > index 83df8c09f6..0bd976b4d0 100644 > --- a/target/i386/sev.c > +++ b/target/i386/sev.c > @@ -500,8 +500,8 @@ sev_get_attestation_report(const char *mnonce, Error > **errp) > struct kvm_sev_attestation_report input = {}; > SevAttestationReport *report = NULL; > SevGuestState *sev = sev_guest; > -guchar *data; > -guchar *buf; > +g_autofree guchar *data = NULL; > +g_autofree guchar *buf = NULL; > gsize len; > int err = 0, ret; > > @@ -521,7 +521,6 @@ sev_get_attestation_report(const char *mnonce, Error > **errp) > if (len != sizeof(input.mnonce)) { > error_setg(errp, "SEV: mnonce must be %zu bytes (got %" > G_GSIZE_FORMAT ")", > sizeof(input.mnonce), len); > -g_free(buf); > return NULL; > } > > @@ -532,7 +531,6 @@ sev_get_attestation_report(const char *mnonce, Error > **errp) > if (err != SEV_RET_INVALID_LEN) { > error_setg(errp, "failed to query the attestation report length " > "ret=%d fw_err=%d (%s)", ret, err, fw_error_to_str(err)); > -g_free(buf); > return NULL; > } > } > @@ -547,7 +545,7 @@ sev_get_attestation_report(const char *mnonce, Error > **errp) > if (ret) { > error_setg_errno(errp, errno, "Failed to get attestation report" > " ret=%d fw_err=%d (%s)", ret, err, fw_error_to_str(err)); > -goto e_free_data; > +return NULL; > } > > report = g_new0(SevAttestationReport, 1); > @@ -555,9 +553,6 @@ sev_get_attestation_report(const char *mnonce, Error > **errp) > > trace_kvm_sev_attestation_report(mnonce, report->data); > > -e_free_data: > -g_free(data); > -g_free(buf); > return report; > } >
[PATCH] sev: sev_get_attestation_report use g_autofree
From: "Dr. David Alan Gilbert" Removes a whole bunch of g_free's and a goto. Signed-off-by: Dr. David Alan Gilbert --- target/i386/sev.c | 11 +++ 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/target/i386/sev.c b/target/i386/sev.c index 83df8c09f6..0bd976b4d0 100644 --- a/target/i386/sev.c +++ b/target/i386/sev.c @@ -500,8 +500,8 @@ sev_get_attestation_report(const char *mnonce, Error **errp) struct kvm_sev_attestation_report input = {}; SevAttestationReport *report = NULL; SevGuestState *sev = sev_guest; -guchar *data; -guchar *buf; +g_autofree guchar *data = NULL; +g_autofree guchar *buf = NULL; gsize len; int err = 0, ret; @@ -521,7 +521,6 @@ sev_get_attestation_report(const char *mnonce, Error **errp) if (len != sizeof(input.mnonce)) { error_setg(errp, "SEV: mnonce must be %zu bytes (got %" G_GSIZE_FORMAT ")", sizeof(input.mnonce), len); -g_free(buf); return NULL; } @@ -532,7 +531,6 @@ sev_get_attestation_report(const char *mnonce, Error **errp) if (err != SEV_RET_INVALID_LEN) { error_setg(errp, "failed to query the attestation report length " "ret=%d fw_err=%d (%s)", ret, err, fw_error_to_str(err)); -g_free(buf); return NULL; } } @@ -547,7 +545,7 @@ sev_get_attestation_report(const char *mnonce, Error **errp) if (ret) { error_setg_errno(errp, errno, "Failed to get attestation report" " ret=%d fw_err=%d (%s)", ret, err, fw_error_to_str(err)); -goto e_free_data; +return NULL; } report = g_new0(SevAttestationReport, 1); @@ -555,9 +553,6 @@ sev_get_attestation_report(const char *mnonce, Error **errp) trace_kvm_sev_attestation_report(mnonce, report->data); -e_free_data: -g_free(data); -g_free(buf); return report; } -- 2.31.1