2017-03-28 15:54:51

by Colin King

[permalink] [raw]
Subject: [PATCH] VSOCK: remove unnecessary ternary operator on return value

From: Colin Ian King <[email protected]>

Rather than assign the positive errno values to ret and then
checking if it is positive and flip the sign, just set ret to
be the -ve errno value.

Detected by CoverityScan, CID#986649 ("Logically Dead Code")

Signed-off-by: Colin Ian King <[email protected]>
---
net/vmw_vsock/vmci_transport.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c
index 4be4fbbc0b50..a68cd6b0fb72 100644
--- a/net/vmw_vsock/vmci_transport.c
+++ b/net/vmw_vsock/vmci_transport.c
@@ -100,27 +100,27 @@ static s32 vmci_transport_error_to_vsock_error(s32 vmci_error)

switch (vmci_error) {
case VMCI_ERROR_NO_MEM:
- err = ENOMEM;
+ err = -ENOMEM;
break;
case VMCI_ERROR_DUPLICATE_ENTRY:
case VMCI_ERROR_ALREADY_EXISTS:
- err = EADDRINUSE;
+ err = -EADDRINUSE;
break;
case VMCI_ERROR_NO_ACCESS:
- err = EPERM;
+ err = -EPERM;
break;
case VMCI_ERROR_NO_RESOURCES:
- err = ENOBUFS;
+ err = -ENOBUFS;
break;
case VMCI_ERROR_INVALID_RESOURCE:
- err = EHOSTUNREACH;
+ err = -EHOSTUNREACH;
break;
case VMCI_ERROR_INVALID_ARGS:
default:
- err = EINVAL;
+ err = -EINVAL;
}

- return err > 0 ? -err : err;
+ return err;
}

static u32 vmci_transport_peer_rid(u32 peer_cid)
--
2.11.0


2017-03-28 16:05:12

by walter harms

[permalink] [raw]
Subject: Re: [PATCH] VSOCK: remove unnecessary ternary operator on return value



Am 28.03.2017 17:54, schrieb Colin King:
> From: Colin Ian King <[email protected]>
>
> Rather than assign the positive errno values to ret and then
> checking if it is positive and flip the sign, just set ret to
> be the -ve errno value.
>
> Detected by CoverityScan, CID#986649 ("Logically Dead Code")
>
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> net/vmw_vsock/vmci_transport.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c
> index 4be4fbbc0b50..a68cd6b0fb72 100644
> --- a/net/vmw_vsock/vmci_transport.c
> +++ b/net/vmw_vsock/vmci_transport.c
> @@ -100,27 +100,27 @@ static s32 vmci_transport_error_to_vsock_error(s32 vmci_error)
>
> switch (vmci_error) {
> case VMCI_ERROR_NO_MEM:
> - err = ENOMEM;
> + err = -ENOMEM;
> break;
> case VMCI_ERROR_DUPLICATE_ENTRY:
> case VMCI_ERROR_ALREADY_EXISTS:
> - err = EADDRINUSE;
> + err = -EADDRINUSE;
> break;
> case VMCI_ERROR_NO_ACCESS:
> - err = EPERM;
> + err = -EPERM;
> break;
> case VMCI_ERROR_NO_RESOURCES:
> - err = ENOBUFS;
> + err = -ENOBUFS;
> break;
> case VMCI_ERROR_INVALID_RESOURCE:
> - err = EHOSTUNREACH;
> + err = -EHOSTUNREACH;
> break;
> case VMCI_ERROR_INVALID_ARGS:
> default:
> - err = EINVAL;
> + err = -EINVAL;
> }
>
> - return err > 0 ? -err : err;
> + return err;
> }
>
> static u32 vmci_transport_peer_rid(u32 peer_cid)


yes, but because there is nothing to do you could return directly
and forget about err.

note: why is there a MCI_ERROR_NO_MEM when you can map this to ENOMEM ?

re,
wh


2017-03-29 04:50:08

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] VSOCK: remove unnecessary ternary operator on return value

From: Colin King <[email protected]>
Date: Tue, 28 Mar 2017 16:54:24 +0100

> From: Colin Ian King <[email protected]>
>
> Rather than assign the positive errno values to ret and then
> checking if it is positive and flip the sign, just set ret to
> be the -ve errno value.
>
> Detected by CoverityScan, CID#986649 ("Logically Dead Code")
>
> Signed-off-by: Colin Ian King <[email protected]>

Just return the error directly instead of having this variable.

Thanks.