Commit 5e9cea26 authored by yidong0635's avatar yidong0635 Committed by Jim Harris
Browse files

rdma: Fix scanbuild warning for gcc9+.



This issue can be reproduced on fedora30.
Add assert here is enough to fix this kind of warning.

Error log:
rdma.c:3070:20: warning: Access to field 'data_buf_pool' results in a
dereference of a null pointer (loaded from field 'transport')
                spdk_mempool_put(group->transport->data_buf_pool, buf);
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.

This is to fix issue #965.

Change-Id: Ifb742ab914ee9a0381dca0bb769ba8aa564c816f
Signed-off-by: default avataryidong0635 <dongx.yi@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468908


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom SPDK FC-NVMe CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: default avatarSeth Howell <seth.howell@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
parent d43ee98c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -3258,6 +3258,7 @@ spdk_nvmf_rdma_poll_group_destroy(struct spdk_nvmf_transport_poll_group *group)
	/* free all retired buffers back to the transport so we don't short the mempool. */
	STAILQ_FOREACH_SAFE(buf, &rgroup->retired_bufs, link, tmp_buf) {
		STAILQ_REMOVE(&rgroup->retired_bufs, buf, spdk_nvmf_transport_pg_cache_buf, link);
		assert(group->transport != NULL);
		spdk_mempool_put(group->transport->data_buf_pool, buf);
	}