diff mbox series

migration/dirtyrate: Replace malloc with g_new

Message ID 20220411094703.7000-1-jianchunfu@cmss.chinamobile.com
State New
Headers show
Series migration/dirtyrate: Replace malloc with g_new | expand

Commit Message

jianchunfu April 11, 2022, 9:47 a.m. UTC
Using macro g_new() to handling potential memory allocation failures
in dirtyrate.

Signed-off-by: jianchunfu <jianchunfu@cmss.chinamobile.com>
---
 migration/dirtyrate.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Richard Henderson April 11, 2022, 6:08 p.m. UTC | #1
On 4/11/22 02:47, jianchunfu wrote:
> Using macro g_new() to handling potential memory allocation failures
> in dirtyrate.
> 
> Signed-off-by: jianchunfu<jianchunfu@cmss.chinamobile.com>
> ---
>   migration/dirtyrate.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~
Philippe Mathieu-Daudé April 11, 2022, 9:44 p.m. UTC | #2
On 11/4/22 11:47, jianchunfu wrote:
> Using macro g_new() to handling potential memory allocation failures
> in dirtyrate.
> 
> Signed-off-by: jianchunfu <jianchunfu@cmss.chinamobile.com>
> ---
>   migration/dirtyrate.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
> index aace12a787..0e59aacbb0 100644
> --- a/migration/dirtyrate.c
> +++ b/migration/dirtyrate.c
> @@ -522,10 +522,10 @@ static void calculate_dirtyrate_dirty_ring(struct DirtyRateConfig config)
>           nvcpu++;
>       }
>   
> -    dirty_pages = malloc(sizeof(*dirty_pages) * nvcpu);
> +    dirty_pages = g_new(DirtyPageRecord, nvcpu);
>   
>       DirtyStat.dirty_ring.nvcpu = nvcpu;
> -    DirtyStat.dirty_ring.rates = malloc(sizeof(DirtyRateVcpu) * nvcpu);
> +    DirtyStat.dirty_ring.rates = g_new(DirtyRateVcpu, nvcpu);
>   
>       dirtyrate_global_dirty_log_start();
>   

While malloc() resources are released with free(), g_malloc/g_new()
ones with g_free().

So to match the API, this hunk is missing:

-- >8 --
diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
index aace12a787..e49db7ca4c 100644
--- a/migration/dirtyrate.c
+++ b/migration/dirtyrate.c
@@ -159,3 +159,3 @@ static void cleanup_dirtyrate_stat(struct 
DirtyRateConfig config)
      if (dirtyrate_mode == DIRTY_RATE_MEASURE_MODE_DIRTY_RING) {
-        free(DirtyStat.dirty_ring.rates);
+        g_free(DirtyStat.dirty_ring.rates);
          DirtyStat.dirty_ring.rates = NULL;
@@ -558,3 +558,3 @@ static void calculate_dirtyrate_dirty_ring(struct 
DirtyRateConfig config)
      DirtyStat.dirty_rate = dirtyrate_sum;
-    free(dirty_pages);
+    g_free(dirty_pages);
  }
---
diff mbox series

Patch

diff --git a/migration/dirtyrate.c b/migration/dirtyrate.c
index aace12a787..0e59aacbb0 100644
--- a/migration/dirtyrate.c
+++ b/migration/dirtyrate.c
@@ -522,10 +522,10 @@  static void calculate_dirtyrate_dirty_ring(struct DirtyRateConfig config)
         nvcpu++;
     }
 
-    dirty_pages = malloc(sizeof(*dirty_pages) * nvcpu);
+    dirty_pages = g_new(DirtyPageRecord, nvcpu);
 
     DirtyStat.dirty_ring.nvcpu = nvcpu;
-    DirtyStat.dirty_ring.rates = malloc(sizeof(DirtyRateVcpu) * nvcpu);
+    DirtyStat.dirty_ring.rates = g_new(DirtyRateVcpu, nvcpu);
 
     dirtyrate_global_dirty_log_start();