[dpdk-dev] examples/kni: unchecked return value

Message ID 1462786710-22032-1-git-send-email-danielx.t.mrzyglod@intel.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Daniel Mrzyglod May 9, 2016, 9:38 a.m. UTC
  Fix issue reported by Coverity.
Coverity ID 30692

If the function returns an error value, the error value may be mistaken for
a normal value.

In kni_free_kni: Value returned from a function is not checked for errors
before being used

Fixes: b475eb0bc400 ("examples/kni: new parameters")

Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
---
 examples/kni/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Zhang, Helin May 9, 2016, 8:49 a.m. UTC | #1
> -----Original Message-----
> From: Mrzyglod, DanielX T
> Sent: Monday, May 9, 2016 5:39 PM
> To: Zhang, Helin <helin.zhang@intel.com>
> Cc: dev@dpdk.org; Mrzyglod, DanielX T <danielx.t.mrzyglod@intel.com>
> Subject: [PATCH] examples/kni: unchecked return value
> 
> Fix issue reported by Coverity.
> Coverity ID 30692
> 
> If the function returns an error value, the error value may be mistaken for a
> normal value.
> 
> In kni_free_kni: Value returned from a function is not checked for errors before
> being used
> 
> Fixes: b475eb0bc400 ("examples/kni: new parameters")
> 
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
  
Thomas Monjalon May 16, 2016, 12:32 p.m. UTC | #2
2016-05-09 11:38, Daniel Mrzyglod:
> Fix issue reported by Coverity.
> Coverity ID 30692

Better to put reference on top of Fixes: line.

> If the function returns an error value, the error value may be mistaken for
> a normal value.
> 
> In kni_free_kni: Value returned from a function is not checked for errors
> before being used

One of the 2 sentences is enough.

> Fixes: b475eb0bc400 ("examples/kni: new parameters")
> 
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod@intel.com>
> ---
>  examples/kni/main.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/examples/kni/main.c b/examples/kni/main.c
> index a5297f2..dcecd09 100644
> --- a/examples/kni/main.c
> +++ b/examples/kni/main.c
> @@ -831,7 +831,8 @@ kni_free_kni(uint8_t port_id)
>  		return -1;
>  
>  	for (i = 0; i < p[port_id]->nb_kni; i++) {
> -		rte_kni_release(p[port_id]->kni[i]);
> +		if (rte_kni_release(p[port_id]->kni[i]))
> +			printf("fail to release kni\n");

Other error messages of this file start with an uppercase.

Applied with above changes, thanks
  

Patch

diff --git a/examples/kni/main.c b/examples/kni/main.c
index a5297f2..dcecd09 100644
--- a/examples/kni/main.c
+++ b/examples/kni/main.c
@@ -831,7 +831,8 @@  kni_free_kni(uint8_t port_id)
 		return -1;
 
 	for (i = 0; i < p[port_id]->nb_kni; i++) {
-		rte_kni_release(p[port_id]->kni[i]);
+		if (rte_kni_release(p[port_id]->kni[i]))
+			printf("fail to release kni\n");
 		p[port_id]->kni[i] = NULL;
 	}
 	rte_eth_dev_stop(port_id);