mempool: fix ignore return value Coverity issue

Message ID 20201105135114.10920-1-david.hunt@intel.com (mailing list archive)
State Rejected, archived
Delegated to: Thomas Monjalon
Headers
Series mempool: fix ignore return value Coverity issue |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/travis-robot success Travis build: passed
ci/iol-testing success Testing PASS
ci/iol-intel-Functional fail Functional Testing issues
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS

Commit Message

Hunt, David Nov. 5, 2020, 1:51 p.m. UTC
  Coverity flags that rte_mempool_ops_dequeue_bulk() is called without
checking the return value.

This ignoring is intentional, so this patch gets the return code, then
uses RTE_SET_USED so that Coverity will be happy.

Coverity issue: 363744
Fixes: 449c49b93a6b ("mempool: support handler operations")
Cc: stable@dpdk.org

Signed-off-by: David Hunt <david.hunt@intel.com>
---
 lib/librte_mempool/rte_mempool.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
  

Comments

Olivier Matz Nov. 5, 2020, 1:58 p.m. UTC | #1
On Thu, Nov 05, 2020 at 01:51:14PM +0000, David Hunt wrote:
> Coverity flags that rte_mempool_ops_dequeue_bulk() is called without
> checking the return value.
> 
> This ignoring is intentional, so this patch gets the return code, then
> uses RTE_SET_USED so that Coverity will be happy.
> 
> Coverity issue: 363744
> Fixes: 449c49b93a6b ("mempool: support handler operations")
> Cc: stable@dpdk.org
> 
> Signed-off-by: David Hunt <david.hunt@intel.com>

Acked-by: Olivier Matz <olivier.matz@6wind.com>

Thanks David!
  
Thomas Monjalon Nov. 13, 2020, 2:29 p.m. UTC | #2
05/11/2020 14:58, Olivier Matz:
> On Thu, Nov 05, 2020 at 01:51:14PM +0000, David Hunt wrote:
> > Coverity flags that rte_mempool_ops_dequeue_bulk() is called without
> > checking the return value.
> > 
> > This ignoring is intentional, so this patch gets the return code, then
> > uses RTE_SET_USED so that Coverity will be happy.
> > 
> > Coverity issue: 363744
> > Fixes: 449c49b93a6b ("mempool: support handler operations")
> > Cc: stable@dpdk.org
> > 
> > Signed-off-by: David Hunt <david.hunt@intel.com>
> 
> Acked-by: Olivier Matz <olivier.matz@6wind.com>
> 
> Thanks David!

This patch is doing nothing else than shutting up Coverity.
Is there any value adding this comment in the code?
Would it be cleaner to mark it as false positive in Coverity itself?
  

Patch

diff --git a/lib/librte_mempool/rte_mempool.c b/lib/librte_mempool/rte_mempool.c
index b9f3fbd61..2980b1a00 100644
--- a/lib/librte_mempool/rte_mempool.c
+++ b/lib/librte_mempool/rte_mempool.c
@@ -270,9 +270,11 @@  rte_mempool_free_memchunks(struct rte_mempool *mp)
 {
 	struct rte_mempool_memhdr *memhdr;
 	void *elt;
+	int ret;
 
 	while (!STAILQ_EMPTY(&mp->elt_list)) {
-		rte_mempool_ops_dequeue_bulk(mp, &elt, 1);
+		ret = rte_mempool_ops_dequeue_bulk(mp, &elt, 1);
+		RTE_SET_USED(ret); /* Intentionally ignored */
 		(void)elt;
 		STAILQ_REMOVE_HEAD(&mp->elt_list, next);
 		mp->populated_size--;