habanalabs: add a missing lock for in_reset indication
authorTomer Tayar <ttayar@habana.ai>
Tue, 19 Jul 2022 06:01:53 +0000 (09:01 +0300)
committerOded Gabbay <ogabbay@kernel.org>
Sun, 18 Sep 2022 10:29:51 +0000 (13:29 +0300)
Add a missing lock in hl_device_resume() when it assigns a value to the
'in_reset' indication.

Signed-off-by: Tomer Tayar <ttayar@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
drivers/misc/habanalabs/common/device.c

index 90e346727a7cb2661362089fae9be00982a790bd..6a98aae90f496de064219af2e746ed0bddbfe601 100644 (file)
@@ -1091,7 +1091,9 @@ int hl_device_resume(struct hl_device *hdev)
        /* 'in_reset' was set to true during suspend, now we must clear it in order
         * for hard reset to be performed
         */
+       spin_lock(&hdev->reset_info.lock);
        hdev->reset_info.in_reset = 0;
+       spin_unlock(&hdev->reset_info.lock);
 
        rc = hl_device_reset(hdev, HL_DRV_RESET_HARD);
        if (rc) {