Re: [PATCH] sev: sev_get_attestation_report use g_autofree

2021-06-03 Thread Connor Kuehl
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

2021-06-03 Thread Brijesh Singh


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

2021-06-03 Thread Dr. David Alan Gilbert (git)
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