RE: [PATCH] Drivers: hv: vmbus: Call hv_synic_free() if hv_synic_alloc() fails

From: Dexuan Cui
Date: Fri May 05 2023 - 22:40:30 EST


> From: Michael Kelley (LINUX) <mikelley@xxxxxxxxxxxxx>
> Sent: Friday, May 5, 2023 5:30 PM
> ...
> From: Dexuan Cui <decui@xxxxxxxxxxxxx> Sent: Thursday, May 4, 2023 3:42
> PM
> >
> > Commit 572086325ce9 ("Drivers: hv: vmbus: Cleanup synic memory free
> > path")
> > says "Any memory allocations that succeeded will be freed when the caller
> > cleans up by calling hv_synic_free()", but if the get_zeroed_page() in
> > hv_synic_alloc() fails, currently hv_synic_free() is not really called
> > in vmbus_bus_init(), consequently there will be a memory lead, e.g.
>
> s/lead/leak/

Sorry for the typo. Wei, can you please help fix this?

> > hv_context.hv_numa_map is not freed in the error path. Fix this by
> > updating the goto lables.
>
> s/lables/labels/
Ditto.

> The statement in commit 572086325ce9 was true at the time of that
> commit. But I broke things in commit 4df4cb9e99f8. Should add a
> "Fixes:" tag for 4df4cb9e99f8.

I suppose Wei can help add the line:
Fixes: 4df4cb9e99f8 ("x86/hyperv: Initialize clockevents earlier in CPU onlining")

> Nits notwithstanding,
>
> Reviewed-by: Michael Kelley <mikelley@xxxxxxxxxxxxx>

Thanks!