habanalabs: check schedule_hard_reset correctly
authorOded Gabbay <ogabbay@kernel.org>
Thu, 10 Nov 2022 15:05:24 +0000 (17:05 +0200)
committerOded Gabbay <ogabbay@kernel.org>
Wed, 23 Nov 2022 14:13:48 +0000 (16:13 +0200)
schedule_hard_reset can be true only if we didn't do hard-reset.
Therefore, no point of checking it in case hard_reset is true.

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

index 49640c8ca91023a4ee983f123c4f7a708918e27c..0650e511a0f5e2c482fb254d746aedf0b3903770 100644 (file)
@@ -1737,18 +1737,19 @@ kill_processes:
                 * the device will be operational although it shouldn't be
                 */
                hdev->asic_funcs->enable_events_from_fw(hdev);
-       } else if (!reset_upon_device_release) {
-               hdev->reset_info.compute_reset_cnt++;
-       }
-
-       if (schedule_hard_reset) {
-               dev_info(hdev->dev, "Performing hard reset scheduled during compute reset\n");
-               flags = hdev->reset_info.hard_reset_schedule_flags;
-               hdev->reset_info.hard_reset_schedule_flags = 0;
-               hdev->disabled = true;
-               hard_reset = true;
-               handle_reset_trigger(hdev, flags);
-               goto again;
+       } else {
+               if (!reset_upon_device_release)
+                       hdev->reset_info.compute_reset_cnt++;
+
+               if (schedule_hard_reset) {
+                       dev_info(hdev->dev, "Performing hard reset scheduled during compute reset\n");
+                       flags = hdev->reset_info.hard_reset_schedule_flags;
+                       hdev->reset_info.hard_reset_schedule_flags = 0;
+                       hdev->disabled = true;
+                       hard_reset = true;
+                       handle_reset_trigger(hdev, flags);
+                       goto again;
+               }
        }
 
        return 0;