[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201226072717.32001-1-dinghao.liu@zju.edu.cn>
Date: Sat, 26 Dec 2020 15:27:14 +0800
From: Dinghao Liu <dinghao.liu@....edu.cn>
To: dinghao.liu@....edu.cn, kjlu@....edu
Cc: Oded Gabbay <ogabbay@...nel.org>, Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Tomer Tayar <ttayar@...ana.ai>,
Omer Shpigelman <oshpigelman@...ana.ai>,
Ofir Bitton <obitton@...ana.ai>,
Moti Haimovski <mhaimovski@...ana.ai>,
linux-kernel@...r.kernel.org
Subject: [PATCH] habanalabs: Fix memleak in hl_device_reset
When kzalloc() fails, we should execute hl_mmu_fini()
to release the MMU module. It's the same when
hl_ctx_init() fails.
Signed-off-by: Dinghao Liu <dinghao.liu@....edu.cn>
---
drivers/misc/habanalabs/common/device.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/misc/habanalabs/common/device.c b/drivers/misc/habanalabs/common/device.c
index 5871162a8442..e5028890ead1 100644
--- a/drivers/misc/habanalabs/common/device.c
+++ b/drivers/misc/habanalabs/common/device.c
@@ -1092,6 +1092,7 @@ int hl_device_reset(struct hl_device *hdev, bool hard_reset,
GFP_KERNEL);
if (!hdev->kernel_ctx) {
rc = -ENOMEM;
+ hl_mmu_fini(hdev);
goto out_err;
}
@@ -1103,6 +1104,7 @@ int hl_device_reset(struct hl_device *hdev, bool hard_reset,
"failed to init kernel ctx in hard reset\n");
kfree(hdev->kernel_ctx);
hdev->kernel_ctx = NULL;
+ hl_mmu_fini(hdev);
goto out_err;
}
}
--
2.17.1
Powered by blists - more mailing lists