aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Petter Selasky <hselasky@FreeBSD.org>2022-05-19 08:10:48 +0000
committerHans Petter Selasky <hselasky@FreeBSD.org>2022-06-07 06:46:14 +0000
commit936bd793479e274155fa2c42e770d0e4e35943cc (patch)
treec8d0d7d049f715388c4546ca155a84f70a447ee0
parent33870019c5f247b4602f1f044feadcc46bafa514 (diff)
downloadsrc-936bd793479e274155fa2c42e770d0e4e35943cc.tar.gz
src-936bd793479e274155fa2c42e770d0e4e35943cc.zip
mlx4: Fix a memory leak bug.
In function mlx4_opreq_action(), pointer "mailbox" is not released, when mlx4_cmd_box() return and error, causing a memory leak bug. Fix this issue by going to "out" label, mlx4_free_cmd_mailbox() can free this pointer. Linux commit: febfd9d3c7f74063e8e630b15413ca91b567f963 PR: 264056 Sponsored by: NVIDIA Networking (cherry picked from commit 527762b2f776381569bd662ce236d2845234c0a7)
-rw-r--r--sys/dev/mlx4/mlx4_core/mlx4_fw.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/mlx4/mlx4_core/mlx4_fw.c b/sys/dev/mlx4/mlx4_core/mlx4_fw.c
index 8ad31b812428..44c66becb340 100644
--- a/sys/dev/mlx4/mlx4_core/mlx4_fw.c
+++ b/sys/dev/mlx4/mlx4_core/mlx4_fw.c
@@ -2695,7 +2695,7 @@ void mlx4_opreq_action(struct work_struct *work)
if (err) {
mlx4_err(dev, "Failed to retrieve required operation: %d\n",
err);
- return;
+ goto out;
}
MLX4_GET(modifier, outbox, GET_OP_REQ_MODIFIER_OFFSET);
MLX4_GET(token, outbox, GET_OP_REQ_TOKEN_OFFSET);