* Jinhao Gao (gaojin...@huawei.com) wrote: > Some memory allocated for fields having a flag of VMS_ALLOC in SaveState > may not free before VM load vmsd in migration. So we pre-free memory before > allocation in vmstate_handle_alloc() to avoid memleaks. > > Reported-by: Euler Robot <euler.ro...@huawei.com> > Signed-off-by: Jinhao Gao <gaojin...@huawei.com> > Signed-off-by: Michael S. Tsirkin <m...@redhat.com>
Yes, I think that's OK; it's actually pretty rare for this to happen; normally inwards migrations either succeed or fail and exit; doing multiple loads from snapshots is valid and I guess COLO hits this as well. Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > --- > migration/vmstate.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/migration/vmstate.c b/migration/vmstate.c > index e9d2aef66b..873f76739f 100644 > --- a/migration/vmstate.c > +++ b/migration/vmstate.c > @@ -70,6 +70,7 @@ static void vmstate_handle_alloc(void *ptr, const > VMStateField *field, > gsize size = vmstate_size(opaque, field); > size *= vmstate_n_elems(opaque, field); > if (size) { > + g_free(*(void **)ptr); > *(void **)ptr = g_malloc(size); > } > } > -- > 2.23.0 > -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK