From: Eldad Zinger Date: Sun, 1 Aug 2010 15:08:11 +0000 (+0300) Subject: sdp: remove the relation between qp_active and sdp_free_fmr() X-Git-Tag: v4.1.12-92~264^2~5^2~128 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=3f91a6583da3adbff33fa2aff2534bd7f3cbfb24;p=users%2Fjedix%2Flinux-maple.git 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 --- diff --git a/drivers/infiniband/ulp/sdp/sdp_zcopy.c b/drivers/infiniband/ulp/sdp/sdp_zcopy.c index 0804cc2739428..6608d34a649b1 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,