Commit de0e4fd2 authored by Wenwen Wang's avatar Wenwen Wang Committed by David S. Miller

qed: Add cleanup in qed_slowpath_start()

If qed_mcp_send_drv_version() fails, no cleanup is executed, leading to
memory leaks. To fix this issue, introduce the label 'err4' to perform the
cleanup work before returning the error.
Signed-off-by: default avatarWenwen Wang <wenwen@cs.uga.edu>
Acked-by: default avatarSudarsana Reddy Kalluru <skalluru@marvell.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a71d9eff
...@@ -1325,7 +1325,7 @@ static int qed_slowpath_start(struct qed_dev *cdev, ...@@ -1325,7 +1325,7 @@ static int qed_slowpath_start(struct qed_dev *cdev,
&drv_version); &drv_version);
if (rc) { if (rc) {
DP_NOTICE(cdev, "Failed sending drv version command\n"); DP_NOTICE(cdev, "Failed sending drv version command\n");
return rc; goto err4;
} }
} }
...@@ -1333,6 +1333,8 @@ static int qed_slowpath_start(struct qed_dev *cdev, ...@@ -1333,6 +1333,8 @@ static int qed_slowpath_start(struct qed_dev *cdev,
return 0; return 0;
err4:
qed_ll2_dealloc_if(cdev);
err3: err3:
qed_hw_stop(cdev); qed_hw_stop(cdev);
err2: err2:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment