[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220913082448.31120-2-nicolinc@nvidia.com>
Date: Tue, 13 Sep 2022 01:24:44 -0700
From: Nicolin Chen <nicolinc@...dia.com>
To: <joro@...tes.org>, <suravee.suthikulpanit@....com>,
<will@...nel.org>, <robin.murphy@....com>, <robdclark@...il.com>,
<dwmw2@...radead.org>, <baolu.lu@...ux.intel.com>,
<agross@...nel.org>, <bjorn.andersson@...aro.org>,
<konrad.dybcio@...ainline.org>, <matthias.bgg@...il.com>,
<heiko@...ech.de>, <orsonzhai@...il.com>,
<baolin.wang@...ux.alibaba.com>, <zhang.lyra@...il.com>,
<thierry.reding@...il.com>, <jean-philippe@...aro.org>,
<jgg@...dia.com>, <sricharan@...eaurora.org>
CC: <yong.wu@...iatek.com>, <vdumpa@...dia.com>,
<jonathanh@...dia.com>, <tglx@...utronix.de>,
<shameerali.kolothum.thodi@...wei.com>,
<thunder.leizhen@...wei.com>, <christophe.jaillet@...adoo.fr>,
<yangyingliang@...wei.com>, <jon@...id-run.com>,
<iommu@...ts.linux.dev>, <linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>,
<linux-arm-msm@...r.kernel.org>,
<linux-mediatek@...ts.infradead.org>,
<linux-rockchip@...ts.infradead.org>,
<linux-tegra@...r.kernel.org>,
<virtualization@...ts.linux-foundation.org>
Subject: [PATCH 1/5] iommu/msm: Add missing __disable_clocks calls
The clock is not symmetrically disabled in the error-out routines.
Fixes: 109bd48ea2e1 ("iommu/msm: Add DT adaptation")
Cc: stable@...r.kernel.org
Cc: Sricharan R <sricharan@...eaurora.org>
Cc: Andy Gross <agross@...nel.org>
Cc: Bjorn Andersson <bjorn.andersson@...aro.org>
Cc: Konrad Dybcio <konrad.dybcio@...ainline.org>
Signed-off-by: Nicolin Chen <nicolinc@...dia.com>
---
drivers/iommu/msm_iommu.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/msm_iommu.c b/drivers/iommu/msm_iommu.c
index 6a24aa804ea3..a7d41ba4a47b 100644
--- a/drivers/iommu/msm_iommu.c
+++ b/drivers/iommu/msm_iommu.c
@@ -418,6 +418,7 @@ static int msm_iommu_attach_dev(struct iommu_domain *domain, struct device *dev)
list_for_each_entry(master, &iommu->ctx_list, list) {
if (master->num) {
dev_err(dev, "domain already attached");
+ __disable_clocks(iommu);
ret = -EEXIST;
goto fail;
}
@@ -425,6 +426,7 @@ static int msm_iommu_attach_dev(struct iommu_domain *domain, struct device *dev)
msm_iommu_alloc_ctx(iommu->context_map,
0, iommu->ncb);
if (IS_ERR_VALUE(master->num)) {
+ __disable_clocks(iommu);
ret = -ENODEV;
goto fail;
}
--
2.17.1
Powered by blists - more mailing lists