mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-05-05 20:56:12 +02:00
nvme: Fix memory leak on error path of nvme_init
The use of log_msg_ret to log a message and return an error meant that memory allocated earlier in the function was not freed on this error path. Instead log the message in the same way that log_msg_ret would do and then goto the cleanup code to free the memory. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
This commit is contained in:
parent
39b836d898
commit
f074616014
@ -912,8 +912,10 @@ int nvme_init(struct udevice *udev)
|
||||
goto free_id;
|
||||
|
||||
ret = bootdev_setup_for_sibling_blk(ns_udev, "nvme_bootdev");
|
||||
if (ret)
|
||||
return log_msg_ret("bootdev", ret);
|
||||
if (ret) {
|
||||
log_err("bootdev: returning err=%d\n", ret);
|
||||
goto free_id;
|
||||
}
|
||||
|
||||
ret = blk_probe_or_unbind(ns_udev);
|
||||
if (ret)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user