| From b0c613cae07498255033f766d5a3d4d3cdd833ec Mon Sep 17 00:00:00 2001 |
| From: Oded Gabbay <oded.gabbay@gmail.com> |
| Date: Thu, 23 Jan 2020 00:43:06 +0200 |
| Subject: [PATCH] habanalabs: patched cb equals user cb in device memset |
| |
| commit cf01514c5c6efa2d521d35e68dff2e0674d08e91 upstream. |
| |
| During device memory memset, the driver allocates and use a CB (command |
| buffer). To reuse existing code, it keeps a pointer to the CB in two |
| variables, user_cb and patched_cb. Therefore, there is no need to "put" |
| both the user_cb and patched_cb, as it will cause an underflow of the |
| refcnt of the CB. |
| |
| Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/misc/habanalabs/goya/goya.c b/drivers/misc/habanalabs/goya/goya.c |
| index 369a5dfbb9ae..86f7b6dcfa76 100644 |
| --- a/drivers/misc/habanalabs/goya/goya.c |
| +++ b/drivers/misc/habanalabs/goya/goya.c |
| @@ -4532,8 +4532,6 @@ static int goya_memset_device_memory(struct hl_device *hdev, u64 addr, u32 size, |
| |
| rc = goya_send_job_on_qman0(hdev, job); |
| |
| - hl_cb_put(job->patched_cb); |
| - |
| hl_debugfs_remove_job(hdev, job); |
| kfree(job); |
| cb->cs_cnt--; |
| -- |
| 2.7.4 |
| |