From: Moti Haimovski <mhaimov...@habana.ai>

This commit modifies the call to retrieve HW or FW error events to
return success when no events are pending, as done in the calls to
other events.

Signed-off-by: Moti Haimovski <mhaimov...@habana.ai>
Reviewed-by: Oded Gabbay <ogab...@kernel.org>
Signed-off-by: Oded Gabbay <ogab...@kernel.org>
---
 .../habanalabs/common/habanalabs_ioctl.c      | 20 +++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/drivers/accel/habanalabs/common/habanalabs_ioctl.c 
b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
index 203ee857810c..4368e6c9a23a 100644
--- a/drivers/accel/habanalabs/common/habanalabs_ioctl.c
+++ b/drivers/accel/habanalabs/common/habanalabs_ioctl.c
@@ -842,15 +842,15 @@ static int hw_err_info(struct hl_fpriv *hpriv, struct 
hl_info_args *args)
        struct hw_err_info *info;
        int rc;
 
-       if ((!user_buf_size) || (!user_buf))
+       if (!user_buf)
                return -EINVAL;
 
-       if (user_buf_size < sizeof(struct hl_info_hw_err_event))
-               return -ENOMEM;
-
        info = &hdev->captured_err_info.hw_err;
        if (!info->event_info_available)
-               return -ENOENT;
+               return 0;
+
+       if (user_buf_size < sizeof(struct hl_info_hw_err_event))
+               return -ENOMEM;
 
        rc = copy_to_user(user_buf, &info->event, sizeof(struct 
hl_info_hw_err_event));
        return rc ? -EFAULT : 0;
@@ -864,15 +864,15 @@ static int fw_err_info(struct hl_fpriv *hpriv, struct 
hl_info_args *args)
        struct fw_err_info *info;
        int rc;
 
-       if ((!user_buf_size) || (!user_buf))
+       if (!user_buf)
                return -EINVAL;
 
-       if (user_buf_size < sizeof(struct hl_info_fw_err_event))
-               return -ENOMEM;
-
        info = &hdev->captured_err_info.fw_err;
        if (!info->event_info_available)
-               return -ENOENT;
+               return 0;
+
+       if (user_buf_size < sizeof(struct hl_info_fw_err_event))
+               return -ENOMEM;
 
        rc = copy_to_user(user_buf, &info->event, sizeof(struct 
hl_info_fw_err_event));
        return rc ? -EFAULT : 0;
-- 
2.40.0

Reply via email to