Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp180432pxy; Wed, 21 Apr 2021 22:47:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzmXsbLO7qWN+pppXkI5IVTPCFo5ishraXb2xtjwO4szcvZz2vZnmNwMtyp+A6kggv+UP8U X-Received: by 2002:aa7:d9cf:: with SMTP id v15mr1615023eds.358.1619070448553; Wed, 21 Apr 2021 22:47:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619070448; cv=none; d=google.com; s=arc-20160816; b=UqseKHLcoOcDnZX3bJuF1X5uWhlPYCHxQhEK7o93RIQISPFJ5U72Izu85wxqcznGsO xhDj7Lvf5iqm00fMoLNhG2sx6xxPIjMl3yyje7u4BnyojcTjAMjC/kjbhQBfWHbM1xgx dAUDn3czDya7pgEsKxbYUttJw/RoQVMbnSGvsC0oUmkZY+XR7LBiDOl1a8E0kyrUuV4V FCF+V100cO08K4RGo3o5cmFgq+lWiiXi2Yy1Om4+TqOkHdqpcCNbmM+5pGrS29yNuYQj 1h7/QS6E2Fus1HmDuAes8N2KZ7qp+4wXnYlEuVx/pXGVPvvxq4GIXCDmbmpTWe/gME7Y PSsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :to:subject:cc:ironport-sdr:ironport-sdr; bh=sv9reS7DBR9Kb8eeMq6JReBGifC7pC0a+sl2kYTE0gg=; b=sfYDjYtRNnYS2JtvIlDhQiMje15hN3EDIktc+hcj78sm5xmOS4z21V23JIEHSQE8jJ 5KLKRkg7CDKrs4DIVe+9jEBB7RTDJfAG339hD/sLMiA+dUChGwbjMeHHgF3cgMiZdhx9 lYwXPyPoWIdmocd3HAFkGzKQJv73ayKWGo5EPNf1fLdA7US7zd3Jki3h+hXVA7WMIXzu uANFamixgMxKINz0VZji8NqZLLX5HkgNbyVUtZB+Y76my/kcGJYZeU/S7A+osrEa+kLA WAyhXwiivmyv/3jll9CowOTHu78bnx8gppFJwH4YMOWPc3OQS6Pb/2OZPv3C6zKcI5RA Lz3g== 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 o8si1262217ejb.399.2021.04.21.22.47.04; Wed, 21 Apr 2021 22:47:28 -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 S230008AbhDVFok (ORCPT + 99 others); Thu, 22 Apr 2021 01:44:40 -0400 Received: from mga12.intel.com ([192.55.52.136]:64172 "EHLO mga12.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229547AbhDVFoh (ORCPT ); Thu, 22 Apr 2021 01:44:37 -0400 IronPort-SDR: xV1Z3RRjb/WtKFEihkvzfET9UYE1juTKwtFIM3ZLYUJlYV6HvbaU4SwMfc44pe5p3lRu0Ynwqd 9XlJHZ8eY7Fg== X-IronPort-AV: E=McAfee;i="6200,9189,9961"; a="175316669" X-IronPort-AV: E=Sophos;i="5.82,241,1613462400"; d="scan'208";a="175316669" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Apr 2021 22:44:03 -0700 IronPort-SDR: OiZdGW1Av586D5MrQvzGUrwiUhBfctjZwZ/+Pyckqj1gLR1228+nK0/UXRuR0T+h8rBfd6fxWF Px7Xo04WsKZw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,241,1613462400"; d="scan'208";a="524527974" Received: from allen-box.sh.intel.com (HELO [10.239.159.128]) ([10.239.159.128]) by fmsmga001.fm.intel.com with ESMTP; 21 Apr 2021 22:44:01 -0700 Cc: baolu.lu@linux.intel.com, David Woodhouse , iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] iommu/vt-d: Fix sysfs leak in alloc_domain() To: Rolf Eike Beer , Joerg Roedel , Will Deacon References: <1716403.SmlLz2RZUD@devpool47> <17411490.HIIP88n32C@mobilepool36.emlix.com> From: Lu Baolu Message-ID: Date: Thu, 22 Apr 2021 13:34:17 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 MIME-Version: 1.0 In-Reply-To: <17411490.HIIP88n32C@mobilepool36.emlix.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Rolf, On 4/22/21 1:39 PM, Rolf Eike Beer wrote: > iommu_device_sysfs_add() is called before, so is has to be cleaned on subsequent > errors. > > Fixes: 39ab9555c2411 ("iommu: Add sysfs bindings for struct iommu_device") > Cc: stable@vger.kernel.org # 4.11.x > Signed-off-by: Rolf Eike Beer Acked-by: Lu Baolu P.S. Next time when you submit a new version, please use a version tag. Best regards, baolu > --- > drivers/iommu/intel/dmar.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/iommu/intel/dmar.c b/drivers/iommu/intel/dmar.c > index d5c51b5c20af..c2bfccb19e24 100644 > --- a/drivers/iommu/intel/dmar.c > +++ b/drivers/iommu/intel/dmar.c > @@ -1144,7 +1144,7 @@ static int alloc_iommu(struct dmar_drhd_unit *drhd) > > err = iommu_device_register(&iommu->iommu); > if (err) > - goto err_unmap; > + goto err_sysfs; > } > > drhd->iommu = iommu; > @@ -1152,6 +1152,8 @@ static int alloc_iommu(struct dmar_drhd_unit *drhd) > > return 0; > > +err_sysfs: > + iommu_device_sysfs_remove(&iommu->iommu); > err_unmap: > unmap_iommu(iommu); > error_free_seq_id: >