On 4 March 2016 at 15:44, Eric Blake <ebl...@redhat.com> wrote: > On 03/04/2016 07:53 AM, Sarah Khan wrote: >> This patch replaces malloc() with g_malloc() as stated to be done in >> bitesized task >> >> diff --git a/thunk.c b/thunk.c >> index f057d86..bddabae 100644 >> --- a/thunk.c >> +++ b/thunk.c >> @@ -88,7 +88,7 @@ void thunk_register_struct(int id, const char *name, const >> argtype *types) >> for(i = 0;i < 2; i++) { >> offset = 0; >> max_align = 1; >> - se->field_offsets[i] = malloc(nb_fields * sizeof(int)); >> + se->field_offsets[i] = g_malloc(nb_fields * sizeof(int)); >> type_ptr = se->field_types; >> for(j = 0;j < nb_fields; j++) { >> size = thunk_type_size(type_ptr, i); > > Where is the corresponding free()? g_malloc() must be paired with > g_free(), so you need to convert both places at once.
There is no corresponding free(). thunk_register_struct() is called only at startup from the linux-user code in order to populate the struct_entries array; this data structure then remains live for the entire lifetime of the program and is automatically freed when QEMU exits. This is worth mentioning in the commit message, but the code is correct I think: Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> thanks -- PMM