accel/habanalabs: tiny refactor of hl_device_reset for readability
authorDafna Hirschfeld <dhirschfeld@habana.ai>
Wed, 8 Feb 2023 13:11:58 +0000 (15:11 +0200)
committerOded Gabbay <ogabbay@kernel.org>
Wed, 15 Mar 2023 11:29:13 +0000 (13:29 +0200)
Align assignment of reset_upon_device_release to the convention used
in this function.

Signed-off-by: Dafna Hirschfeld <dhirschfeld@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
drivers/accel/habanalabs/common/device.c

index 2d496cd..0e405e4 100644 (file)
@@ -1475,7 +1475,7 @@ static void handle_reset_trigger(struct hl_device *hdev, u32 flags)
 int hl_device_reset(struct hl_device *hdev, u32 flags)
 {
        bool hard_reset, from_hard_reset_thread, fw_reset, hard_instead_soft = false,
-                       reset_upon_device_release = false, schedule_hard_reset = false,
+                       reset_upon_device_release, schedule_hard_reset = false,
                        delay_reset, from_dev_release, from_watchdog_thread;
        u64 idle_mask[HL_BUSY_ENGINES_MASK_EXT_SIZE] = {0};
        struct hl_ctx *ctx;
@@ -1492,6 +1492,7 @@ int hl_device_reset(struct hl_device *hdev, u32 flags)
        from_dev_release = !!(flags & HL_DRV_RESET_DEV_RELEASE);
        delay_reset = !!(flags & HL_DRV_RESET_DELAY);
        from_watchdog_thread = !!(flags & HL_DRV_RESET_FROM_WD_THR);
+       reset_upon_device_release = hdev->reset_upon_device_release && from_dev_release;
 
        if (!hard_reset && (hl_device_status(hdev) == HL_DEVICE_STATUS_MALFUNCTION)) {
                dev_dbg(hdev->dev, "soft-reset isn't supported on a malfunctioning device\n");
@@ -1503,15 +1504,13 @@ int hl_device_reset(struct hl_device *hdev, u32 flags)
                hard_reset = true;
        }
 
-       if (hdev->reset_upon_device_release && from_dev_release) {
+       if (reset_upon_device_release) {
                if (hard_reset) {
                        dev_crit(hdev->dev,
                                "Aborting reset because hard-reset is mutually exclusive with reset-on-device-release\n");
                        return -EINVAL;
                }
 
-               reset_upon_device_release = true;
-
                goto do_reset;
        }