Received: by 10.192.165.148 with SMTP id m20csp3905509imm; Mon, 7 May 2018 22:45:01 -0700 (PDT) X-Google-Smtp-Source: AB8JxZokG2vJSSEKUILKxTJXjpUiHQc7rvqMWZrIJknqdpyKM+ueAEAd+TQJVNrDWRh7tBCc9rVi X-Received: by 2002:a17:902:8345:: with SMTP id z5-v6mr39240537pln.311.1525758301848; Mon, 07 May 2018 22:45:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525758301; cv=none; d=google.com; s=arc-20160816; b=kDvYCip2ZPuKrDOi27Z42aBCrBHWH1cfV7OLgjjpNEXBYHJLLfa8p80qmTzcBY9h2V IvzLzmHKjJWQiwBblfKe6VUseXoLCQCWUDN0q0cel+8Sb64x3zxD8CjNg5gNhpf/6hvK TD+c9rTka0NeG6GfA+iR17SWFeJ1S6JZWdohGghMTK9W7g+RgMg0rP+ut3uMlXKPtPow 6hw7rtS1/fZg6ELqul32isINwvNzemQPGx4zXMymJETK8SMdFW8vOcvLjOInvXUNhBzh ewne7Td4cf00TdkYP+04imHoEZlZRoHDtxR4k2y5lgDL/uxbPveoPISMzX/3p5uhNyWZ CI2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=h4ffQ98bBwRQBzX0W3M1B383rVHWrsdQSYwUfh6Ddls=; b=x8AHSByLL+AK9/nzx+jBb6OeIcV9CoPjZ0BtV3gctWjzO+IcAiadXc+r+D1FQm5XRR 10rvTx8AikaQaahSVDgt4fC73RD0UC89qvAQ1axObmyyY8NJx3P4BgRcNdV+WJo9+ea5 xMCXGlSwITITs+mFhRNCCHYdKhKX/eaKJ/5iywVb05MgJkDEkKyJtfDUtvNwCKmq4cDQ D49m9cWK62B16MHh8lLr2zF0r/Oijt64DKC3OGuudGWIt221zwRfxWMUdSAfGlaZjaxS gIjjSn2x4+og3rPglotwhmuTcbvPtIgcNGStBiIWA5DkbCKdEAE9F4DSE1DWQlLOJxTj KOhw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h7-v6si10936332pgc.14.2018.05.07.22.44.47; Mon, 07 May 2018 22:45:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754142AbeEHFob (ORCPT + 99 others); Tue, 8 May 2018 01:44:31 -0400 Received: from smtp03.smtpout.orange.fr ([80.12.242.125]:39725 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754070AbeEHFoa (ORCPT ); Tue, 8 May 2018 01:44:30 -0400 Received: from ubuntu-CJ.home ([86.244.116.1]) by mwinf5d79 with ME id jhkR1x00a01t9Ri03hkS2T; Tue, 08 May 2018 07:44:27 +0200 X-ME-Helo: ubuntu-CJ.home X-ME-Auth: Y2hyaXN0b3BoZS5qYWlsbGV0QHdhbmFkb28uZnI= X-ME-Date: Tue, 08 May 2018 07:44:27 +0200 X-ME-IP: 86.244.116.1 From: Christophe JAILLET To: swise@chelsio.com, dledford@redhat.com, jgg@ziepe.ca Cc: linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, Christophe JAILLET Subject: [PATCH] iw_cxgb4: Fix an error handling path in 'c4iw_get_dma_mr()' Date: Tue, 8 May 2018 07:44:27 +0200 Message-Id: <20180508054427.10697-1-christophe.jaillet@wanadoo.fr> X-Mailer: git-send-email 2.17.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The error handling path of 'c4iw_get_dma_mr()' does not free resources in the correct order. If an error occures, it can leak 'mhp->wr_waitp'. Fixes: a3f12da0e99a ("iw_cxgb4: allocate wait object for each memory object") Signed-off-by: Christophe JAILLET --- drivers/infiniband/hw/cxgb4/mem.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/cxgb4/mem.c b/drivers/infiniband/hw/cxgb4/mem.c index e90f2fd8dc16..1445918e3239 100644 --- a/drivers/infiniband/hw/cxgb4/mem.c +++ b/drivers/infiniband/hw/cxgb4/mem.c @@ -489,10 +489,10 @@ struct ib_mr *c4iw_get_dma_mr(struct ib_pd *pd, int acc) err_dereg_mem: dereg_mem(&rhp->rdev, mhp->attr.stag, mhp->attr.pbl_size, mhp->attr.pbl_addr, mhp->dereg_skb, mhp->wr_waitp); -err_free_wr_wait: - c4iw_put_wr_wait(mhp->wr_waitp); err_free_skb: kfree_skb(mhp->dereg_skb); +err_free_wr_wait: + c4iw_put_wr_wait(mhp->wr_waitp); err_free_mhp: kfree(mhp); return ERR_PTR(ret); -- 2.17.0