From 3f91a6583da3adbff33fa2aff2534bd7f3cbfb24 Mon Sep 17 00:00:00 2001 From: Eldad Zinger Date: Sun, 1 Aug 2010 18:08:11 +0300 Subject: [PATCH] sdp: remove the relation between qp_active and sdp_free_fmr() This will fix the warning message from ib_destroy_fmr_pool(). Signed-off-by: Eldad Zinger --- drivers/infiniband/ulp/sdp/sdp_zcopy.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/drivers/infiniband/ulp/sdp/sdp_zcopy.c b/drivers/infiniband/ulp/sdp/sdp_zcopy.c index 0804cc273942..6608d34a649b 100644 --- a/drivers/infiniband/ulp/sdp/sdp_zcopy.c +++ b/drivers/infiniband/ulp/sdp/sdp_zcopy.c @@ -515,17 +515,15 @@ err_umem_get: void sdp_free_fmr(struct sock *sk, struct ib_pool_fmr **_fmr, struct ib_umem **_umem) { - if (!sdp_sk(sk)->qp_active) { - sdp_warn(sk, "Trying to free fmr after destroying QP! fmr: %p\n", - *_fmr); - return; + if (*_fmr) { + ib_fmr_pool_unmap(*_fmr); + *_fmr = NULL; } - ib_fmr_pool_unmap(*_fmr); - *_fmr = NULL; - - ib_umem_release(*_umem); - *_umem = NULL; + if (*_umem) { + ib_umem_release(*_umem); + *_umem = NULL; + } } static int sdp_post_rdma_read(struct sock *sk, struct rx_srcavail_state *rx_sa, -- 2.50.1