2020-10-30 14:32:26

by Colin King

[permalink] [raw]
Subject: [PATCH][next] SFH: fix error return check for -ERESTARTSYS

From: Colin Ian King <[email protected]>

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 <[email protected]>
---
drivers/hid/amd-sfh-hid/amd_sfh_hid.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
index a471079a3bd0..4f989483aa03 100644
--- a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
+++ b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
@@ -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;
}
--
2.27.0


2020-10-30 14:42:06

by walter harms

[permalink] [raw]
Subject: AW: [PATCH][next] SFH: fix error return check for -ERESTARTSYS

nit picking:
i would without "else" to improve readability:

if (ret == -ERESTARTSYS)
return -ERESTARTSYS;

if (ret < 0)
return -ETIMEDOUT;

return 0;

jm2c
wh
________________________________________
Von: Colin King <[email protected]>
Gesendet: Freitag, 30. Oktober 2020 15:30:02
An: Nehal Shah; Sandeep Singh; Jiri Kosina; Benjamin Tissoires; [email protected]
Cc: [email protected]; [email protected]
Betreff: [PATCH][next] SFH: fix error return check for -ERESTARTSYS

From: Colin Ian King <[email protected]>

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 <[email protected]>
---
drivers/hid/amd-sfh-hid/amd_sfh_hid.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
index a471079a3bd0..4f989483aa03 100644
--- a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
+++ b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
@@ -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;
}
--
2.27.0

2020-11-09 17:13:21

by Singh, Sandeep

[permalink] [raw]
Subject: Re: [PATCH][next] SFH: fix error return check for -ERESTARTSYS


On 10/30/2020 8:00 PM, Colin King wrote:
> [CAUTION: External Email]
>
> From: Colin Ian King <[email protected]>
>
> 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)")

Thank you for the patch ..looks good to me.

Reviewed-by: Sandeep Singh <[email protected]>

> Signed-off-by: Colin Ian King <[email protected]>
> ---
> drivers/hid/amd-sfh-hid/amd_sfh_hid.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
> index a471079a3bd0..4f989483aa03 100644
> --- a/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
> +++ b/drivers/hid/amd-sfh-hid/amd_sfh_hid.c
> @@ -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;
> }
> --
> 2.27.0
>

2020-11-12 15:30:11

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH][next] SFH: fix error return check for -ERESTARTSYS

On Fri, 30 Oct 2020, Colin King wrote:

> From: Colin Ian King <[email protected]>
>
> 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 <[email protected]>

Applied, thanks.

--
Jiri Kosina
SUSE Labs