summaryrefslogtreecommitdiff
path: root/drivers/misc/habanalabs/device.c
diff options
context:
space:
mode:
authorDalit Ben Zoor <dbenzoor@habana.ai>2019-04-30 17:18:51 +0300
committerOded Gabbay <oded.gabbay@gmail.com>2019-04-30 17:18:51 +0300
commitb1b537713eb1a63a2ecc3547693b3eef7dfb9281 (patch)
tree6144f7f6cb5e7822006155ab35271eec095c18f5 /drivers/misc/habanalabs/device.c
parentf0539fb0fb5fcb595bbb46dfe88c97e825f29f1f (diff)
downloadlinux-b1b537713eb1a63a2ecc3547693b3eef7dfb9281.tar.xz
habanalabs: increase timeout if working with simulator
Where there is a spike in the CPU consumption, it may cause random failures in the C/I since the KMD timeout for CPU and/or QMAN0 jobs expires and it stops communicating to the simulator. This commit fixes it by increasing timeout on polling functions if working with simulator. Signed-off-by: Dalit Ben Zoor <dbenzoor@habana.ai> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Diffstat (limited to 'drivers/misc/habanalabs/device.c')
-rw-r--r--drivers/misc/habanalabs/device.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/misc/habanalabs/device.c b/drivers/misc/habanalabs/device.c
index 0e0b9ec71c80..91a9e47a3482 100644
--- a/drivers/misc/habanalabs/device.c
+++ b/drivers/misc/habanalabs/device.c
@@ -1147,7 +1147,13 @@ int hl_poll_timeout_memory(struct hl_device *hdev, u64 addr,
* either by the direct access of the device or by another core
*/
u32 *paddr = (u32 *) (uintptr_t) addr;
- ktime_t timeout = ktime_add_us(ktime_get(), timeout_us);
+ ktime_t timeout;
+
+ /* timeout should be longer when working with simulator */
+ if (!hdev->pdev)
+ timeout_us *= 10;
+
+ timeout = ktime_add_us(ktime_get(), timeout_us);
might_sleep();