Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp2691004ybt; Tue, 16 Jun 2020 12:26:50 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwBdr0WsWCCZj2/4avtqpRvyl5i/B+5F3oO/lGoaYoDCIw2DOETy91pdlcowd3lyG95qHyn X-Received: by 2002:a05:6402:7cb:: with SMTP id u11mr3858650edy.316.1592335609842; Tue, 16 Jun 2020 12:26:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592335609; cv=none; d=google.com; s=arc-20160816; b=QHfPM+Qpg7I6YtTWDiqUh6zGRtkJByJvmfMEH4LR1AmBi5Bf1REaV6wlciDQ+iihA0 U42F9+63ZFi0CIiTuB/2ey67WVbu6osVUEeUlFvXWvP7IzUzGq6u7Yw8bJ8oWwdoaQJ+ 2QthFIcH+NbVyW79xW8+JLIGfptElZk9c/Cifv0XR7Qgcihi+kJmk0+IRFx5wSMr83Mk lIMxQbjS6nMZoROqRj9aobjNDQLk7b3Zgij8XsGvnZNW1KwHWnBNl5VEzDjnM6v0mn49 PHrh2QqsGGk+/znZ5neeSLEXxcFAd6ghhoeKO0DWtQ5BjlyJ9ekz5nlY4gP2oXxBOj3V OopA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:ironport-sdr:ironport-sdr; bh=9sADXanAYqyXqEd/DosW15dL+UUfHUoFnOZe9GMb2/w=; b=0eMMem07p9dYmrzOetFLytq/pMhTdFygyLbAcUVH86TzZJKprgwRqRQ7A47+q3Ljmv XBSIka67pY+C0Gw83C5SqH7M0rU21SEqNsWOXYi6a0hqPfnf7GAI8JhHH42zmZvm7ivF 6qAnNsAD4DDxq02Q4ZT4mXOBXYs8R3DifB6aEFh/LnKN7WPrIJrIM7FtaSb2h/Bltc+y SXw5+imrySw0Tn/Sm4bD7o4zt7UwrMIULSBwEhN9jOVpJW3/g0nl9HyCaCanUUngJpg5 8lyn2PeR1XTrRGIyMrpe+5cKq+U5k7ejgliXlIR+NL9rKOwRWrm3vgN1fsKVvYW26FN2 IrZA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bi27si12021768edb.232.2020.06.16.12.26.26; Tue, 16 Jun 2020 12:26:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730747AbgFPTVN (ORCPT + 99 others); Tue, 16 Jun 2020 15:21:13 -0400 Received: from mga01.intel.com ([192.55.52.88]:8705 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730769AbgFPTVA (ORCPT ); Tue, 16 Jun 2020 15:21:00 -0400 IronPort-SDR: KgVAs35SFecEVkRkvLbTdL0iH88xTE3eDqmRr49bUU8HKYDfbu5QRy3Xu71V/8bJa7D2fBdYgD hGU4mt1KoW9g== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 12:20:59 -0700 IronPort-SDR: kZSGt3HvOWfGalsxmklyQHNgZyEzZK60wW8pY+Ot5Hm7acUEUh8u5nQVjjAF2HySl1B1wx2/EW aKiDJv8ToMVQ== X-IronPort-AV: E=Sophos;i="5.73,519,1583222400"; d="scan'208";a="449954218" Received: from ddalessa-mobl.amr.corp.intel.com (HELO [10.254.207.107]) ([10.254.207.107]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Jun 2020 12:20:58 -0700 Subject: Re: [PATCH v2] RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq To: Aditya Pakki Cc: kjlu@umn.edu, wu000273@umn.edu, Mike Marciniszyn , Doug Ledford , Jason Gunthorpe , "Michael J. Ruhl" , linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org References: <20200614041148.131983-1-pakki001@umn.edu> From: Dennis Dalessandro Message-ID: Date: Tue, 16 Jun 2020 15:20:56 -0400 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 MIME-Version: 1.0 In-Reply-To: <20200614041148.131983-1-pakki001@umn.edu> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/14/2020 12:11 AM, Aditya Pakki wrote: > In case of failure of alloc_ud_wq_attr(), the memory allocated by > rvt_alloc_rq() is not freed. Fix it by calling rvt_free_rq() using > the existing clean-up code. > > Fixes: d310c4bf8aea ("IB/{rdmavt, hfi1, qib}: Remove AH refcount for UD QPs") > Signed-off-by: Aditya Pakki > --- > v1: Fix incorrect order of rvt_free_rq and free_ud_wq_attr. > Suggested by Dennis Dalessandro. > --- > drivers/infiniband/sw/rdmavt/qp.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/infiniband/sw/rdmavt/qp.c b/drivers/infiniband/sw/rdmavt/qp.c > index 511b72809e14..7db35dd6ad74 100644 > --- a/drivers/infiniband/sw/rdmavt/qp.c > +++ b/drivers/infiniband/sw/rdmavt/qp.c > @@ -1204,7 +1204,7 @@ struct ib_qp *rvt_create_qp(struct ib_pd *ibpd, > err = alloc_ud_wq_attr(qp, rdi->dparms.node); > if (err) { > ret = (ERR_PTR(err)); > - goto bail_driver_priv; > + goto bail_rq_rvt; > } > > if (init_attr->create_flags & IB_QP_CREATE_NETDEV_USE) > @@ -1314,9 +1314,11 @@ struct ib_qp *rvt_create_qp(struct ib_pd *ibpd, > rvt_free_qpn(&rdi->qp_dev->qpn_table, qp->ibqp.qp_num); > > bail_rq_wq: > - rvt_free_rq(&qp->r_rq); > free_ud_wq_attr(qp); > > +bail_rq_rvt: > + rvt_free_rq(&qp->r_rq); > + > bail_driver_priv: > rdi->driver_f.qp_priv_free(rdi, qp); > > Cool thanks. Acked-by: Dennis Dalessandro