SFH: fix error return check for -ERESTARTSYS
authorColin Ian King <colin.king@canonical.com>
Fri, 30 Oct 2020 14:30:02 +0000 (14:30 +0000)
committerJiri Kosina <jkosina@suse.cz>
Thu, 12 Nov 2020 15:25:40 +0000 (16:25 +0100)
Currently the check for the error return code -ERESTARTSYS is dead code
and never executed because a previous check for ret < 0 is catching this
and returning -ETIMEDOUT instead.  Fix this by checking for -ERESTARTSYS
before the more generic negative error code.

Addresses-Coverity: ("Logically dead code")
Fixes: 4b2c53d93a4b ("SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH)")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Sandeep Singh <sandeep.singh@amd.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/amd-sfh-hid/amd_sfh_hid.c

index a471079..4f98948 100644 (file)
@@ -88,10 +88,10 @@ static int amdtp_wait_for_response(struct hid_device *hid)
                ret = wait_event_interruptible_timeout(hid_data->hid_wait,
                                                       cli_data->request_done[i],
                                                       msecs_to_jiffies(AMD_SFH_RESPONSE_TIMEOUT));
-       if (ret < 0)
-               return -ETIMEDOUT;
-       else if (ret == -ERESTARTSYS)
+       if (ret == -ERESTARTSYS)
                return -ERESTARTSYS;
+       else if (ret < 0)
+               return -ETIMEDOUT;
        else
                return 0;
 }