From: Simon Glass <sjg@chromium.org> The output buffer allocated in scmi_base_discover_list_protocols_int() is freed on the error path but not on the success path. Add the missing free(out) before returning on success. Fixes: ec8727b7e1c1 ("firmware: scmi: implement SCMI base protocol") Signed-off-by: Simon Glass <sjg@chromium.org> --- drivers/firmware/scmi/base.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/firmware/scmi/base.c b/drivers/firmware/scmi/base.c index 78ee2ffd2da..d591b23d158 100644 --- a/drivers/firmware/scmi/base.c +++ b/drivers/firmware/scmi/base.c @@ -304,6 +304,7 @@ static int scmi_base_discover_list_protocols_int(struct udevice *dev, } while (cur < num_protocols); *protocols = buf; + free(out); return num_protocols; err: -- 2.43.0