From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 085903D5C1E for ; Tue, 23 Jun 2026 12:21:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782217291; cv=none; b=PsJe+Xxw6RY6Df0S3EZ6R+mlutfSbOFRPjByC98W64g8rvXWIrfna2Ul9lLpIa8VUVNKgtbE3WD8GroxNeAnOZ+fClWlIXQ3OInkcU4hpKNY5UEiSVJHRVpZkjLJiTl5VIOJvWmcPsITHGzqC30Lge8iVUrXUaRCfP6HUh537tE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782217291; c=relaxed/simple; bh=wWGDMXGD5TISOPAYxck+Bim377mn/yH0BJMgpaHrpCI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Qm/gy1hO6pdFk+fLvm38VnP+cbP5INDaZGSZG8rNQp30n18HUTVyWWJfaAblf8K5X7cIjKsO+w0i+J6txep5rKMzE+eOKuEe8yNukjcxCtbbkJrCBDbn9s+WUrRuMhI5I1aBduCC2tNyQDb/ztsHc1Omxokmvwco5gdDX2MxHHQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=TYZQL9E8; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=VdD4h21/; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="TYZQL9E8"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="VdD4h21/" Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 65NC6jPb3744731 for ; Tue, 23 Jun 2026 12:21:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=qcppdkim1; bh=JBzpNmWrMK7 7dv+oRp9gwFSkRedXf34HcCV2tGd28wc=; b=TYZQL9E8iFOu/LED/EVmRVaQnqM kltxe15x145sds5k3qvCjnnnbPX+49+ggmv2QX1KCaqUNgYIvbaE2R17t/aT9nLu 1Q24L4rFnRQhE/uZY8tEQSqd0i6W/7vSlhV/qDRZTSeo6AWxSznmbRCJUnzq0AcT bOwxIZ/9uKDGJOfkqEmkJz2+2iTeQGYkivkeHzwSlitvorn/ldk/jRIKOeDRnaT1 n+fIrMQZrhI+QEw/WZCgQ9psRRuIGDLV3s0HzWwPXP7lNaFd0o8vNElsC1xT+ffL VClykvintZVJI88aqR0BQtJLyaEIjV/TEGuN5+QbgTL872HOk6eRVBRk/nA== Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4eysv3g1hf-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 23 Jun 2026 12:21:27 +0000 (GMT) Received: by mail-pf1-f197.google.com with SMTP id d2e1a72fcca58-84256bee9a9so3952056b3a.1 for ; Tue, 23 Jun 2026 05:21:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1782217287; x=1782822087; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=JBzpNmWrMK77dv+oRp9gwFSkRedXf34HcCV2tGd28wc=; b=VdD4h21/eX0p/Pfmg1C+/HWup/vma6n+aCyIuA00Lkk/TSw3YT4RkraPX+eC4q14T6 q08tAMV8u7zn3lWFTeEhvaUFMT7ClgoKXmeSSlyimkM52ryJaw74Kl5UInVdYDdtS4XI JFEV66zFDsKXoBcRHpJx6P8Yi7Y9HpVBSh/wt6ku9/n0458l3+tWQi748cAbLnkbBPLC SesQqIirR2zoTeYHXXjWM+iwj20p9DIa7likp7RC5kDkXIEzS2+e69tufsPckCPhbT5k KTYSYDBrj7afInt9qUsj8xl55OVW9FX/83y5tfXWhTnzK7oHr+eifvRTqaYx338xhq4X V3Pg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782217287; x=1782822087; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=JBzpNmWrMK77dv+oRp9gwFSkRedXf34HcCV2tGd28wc=; b=fiRrAUYkSsRObBNHeGxrR3ISWRR8nzECUPuMcmDCPu7fDQbja3Hk2CTuZc+9n29+aT Zm/iFPPHJxq37RVvaQ40I0YQ4iwzJo380jbuIsL4kPI5uc+UqkUSRQNg/TiDJ7ahAIuj ZSZ69L/2WKGgkuYfIzgOk4qqJqewkQGydqFwP+DhZDQbVYalcI01lhEnHW3g0DGBYrfv kVvHsTEA3ST7NDVvIRLwhdwCPo7lVSBnEqGgHIB8G46bWR8dDZeY+Phw8lASXSh6bP49 nIijKl/BRgPh8NHimbLc+oMf5XF5ak4awpgtcnycP0JDknA4Mh/v9XZ+iu8Nx2MIK62w C1cA== X-Forwarded-Encrypted: i=1; AFNElJ/OLUgwM4XC8i8ECjjxU3sWWRslqJ2UGSzip0Ny+37GDJzbRKXQHpNXsnS8GjfKcwBo2EP8EJGz1CgQcCU=@vger.kernel.org X-Gm-Message-State: AOJu0YxSTiLRMEa4kJIFZpdLkoq7AKoaCdlQvMftuYwN3h4OyJrIPJkI zmYasgMDO4oMl3/GNYuhKcor3RypOpfGrfjk6ZQNfNLk6ZD6BFlasTSIaohELZsF3Mqa4kavCQv KvGnORRinoEH9lhILLBjDHVWg4kNux4s6iPIkLkUSHxaMaC2mQDxE9DMvoSdccCbDl8E= X-Gm-Gg: AfdE7cn4xbKJTu/93eyYzbNIATc1RN3pBX5CmP8nK5O6JL/gEbMIhVaxYgnoiRb0A8b xXRdbOVEMl44btsvdMCVkHmpT2CmBEJaz9UEoNUqKr827WerHVelCK7shhIKYcktF1eC+AVru+D pR+D2w1NNHH5JLc9e9y6mVAF5s+emJXG1IhCg+5giDggJyf1Gwh1GF5RlgTaNWzESQm6swt/VrQ rcjBRAULB1p3XTGUmLWG6NPJdUrXLoi+R8d/6uYVkZNZXjwJzF81on9yhzkcXNxUC+CXPQBlTDh UXq8ZgYhC0Z23vg3Ja9Gboau7UEF9qISwj3KjMVrTAPXhOdmkFOttQ4NxgpGpvnPnUcKwRfCk9E +pDBJLxta4s/EVXm6q6BViBXAAXq8mc/w64m24g== X-Received: by 2002:a05:6a00:2e22:b0:82f:abc8:ae0 with SMTP id d2e1a72fcca58-84597066cb7mr2782731b3a.17.1782217286760; Tue, 23 Jun 2026 05:21:26 -0700 (PDT) X-Received: by 2002:a05:6a00:2e22:b0:82f:abc8:ae0 with SMTP id d2e1a72fcca58-84597066cb7mr2782687b3a.17.1782217286206; Tue, 23 Jun 2026 05:21:26 -0700 (PDT) Received: from hu-mojha-hyd.qualcomm.com ([202.46.23.25]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-84564e74646sm10171856b3a.29.2026.06.23.05.21.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Jun 2026 05:21:25 -0700 (PDT) From: Mukesh Ojha To: Rob Clark , Will Deacon , "Joerg Roedel (AMD)" Cc: Robin Murphy , iommu@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Mukesh Ojha Subject: [PATCH 8/8] iommu/qcom: Document why sec_ptbl allocated flag needs no locking Date: Tue, 23 Jun 2026 17:50:34 +0530 Message-ID: <20260623122034.1166295-9-mukesh.ojha@oss.qualcomm.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260623122034.1166295-1-mukesh.ojha@oss.qualcomm.com> References: <20260623122034.1166295-1-mukesh.ojha@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Proofpoint-Spam-Info: AW1haW4tMjYwNjIzMDEwMSBTYWx0ZWRfX5xG2SxOh///Z o80jmCxMfXGicdpG9FG6wa5D4hVwdQsVKr2zeUVjhEZaRV0X4iL5H2d65PDzQXy6A8fTCnbzBB/ 8yeNMg5DsKdDNxgAzk3cEPVdQ7lnSjo= X-Proofpoint-GUID: ffD6Pfvi3ZJ3P3jQEVKA5Rpv6CLmlQR1 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjIzMDEwMSBTYWx0ZWRfXweb8bWO31Yz7 5wCdWnuZW5WumDAOXKRUXiYR/ghGDyIz2XcKbVENRtfBiZmLWPaOChm2VQ5LuMkNo1EXB4CmBoo 5DGSKqy4UIPQjnD5LlPzKO110BBVZW/jPlmoHxsUdqjuZeUt+ZFBrPp1bbQkQIA5EBHJfR5po5B nZkVdcrKYixHGP4vEZh2BhRvi6ePurX0NRMZMr9eWQyjmJbxNTZDC6aDSCjm2CtVzFKnUHWeXPH n8PqTP6tE+bilWHnJR3yuEqY9wIybipkKx/X0nRv7M5Xuz0HT/l/7io+KUAHFYW6oAjirxt9Rkl 1iwnxMXz+MUfymOpBIAqX7wg+hKZ6AfKsOy8I3kHEJMMEPRuOHfR6v+qetUxzUATAl4kUK6Lr1Y c5uPMAl0fjU9npENWmxoEMlnr22sAg== X-Authority-Analysis: v=2.4 cv=WtAb99fv c=1 sm=1 tr=0 ts=6a3a7a47 cx=c_pps a=rEQLjTOiSrHUhVqRoksmgQ==:117 a=ZePRamnt/+rB5gQjfz0u9A==:17 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=EUspDBNiAAAA:8 a=KL97T5h_q3IXvoetim4A:9 a=2VI0MkxyNR6bbpdq8BZq:22 X-Proofpoint-ORIG-GUID: ffD6Pfvi3ZJ3P3jQEVKA5Rpv6CLmlQR1 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-23_03,2026-06-23_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 lowpriorityscore=0 adultscore=0 spamscore=0 suspectscore=0 phishscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2606230101 qcom_iommu_sec_ptbl_init() uses a function-static bool to track whether the secure page table has been initialized, with no locking around it. Only one IOMMU device per SoC has secure context banks (the others have only non-secure context banks), and platform devices probe serially since the driver does not set PROBE_PREFER_ASYNCHRONOUS. Concurrent calls to this function are therefore not reachable. Add a comment to make the absence of locking intentional rather than an oversight. Signed-off-by: Mukesh Ojha --- drivers/iommu/arm/arm-smmu/qcom_iommu.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/drivers/iommu/arm/arm-smmu/qcom_iommu.c b/drivers/iommu/arm/arm-smmu/qcom_iommu.c index 0df8c2af8eed..bcf5ab049aed 100644 --- a/drivers/iommu/arm/arm-smmu/qcom_iommu.c +++ b/drivers/iommu/arm/arm-smmu/qcom_iommu.c @@ -624,7 +624,11 @@ static int qcom_iommu_sec_ptbl_init(struct device *dev) void *cpu_addr; dma_addr_t paddr; unsigned long attrs; - static bool allocated = false; + /* + * Only one IOMMU device per SoC has secure context banks, and + * platform devices probe serially, so no locking is needed here. + */ + static bool allocated; int ret; if (allocated) @@ -651,15 +655,12 @@ static int qcom_iommu_sec_ptbl_init(struct device *dev) ret = qcom_scm_iommu_secure_ptbl_init(paddr, psize, spare); if (ret) { dev_err(dev, "failed to init iommu pgtable (%d)\n", ret); - goto free_mem; + dma_free_attrs(dev, psize, cpu_addr, paddr, attrs); + return ret; } allocated = true; return 0; - -free_mem: - dma_free_attrs(dev, psize, cpu_addr, paddr, attrs); - return ret; } static int get_asid(const struct device_node *np) -- 2.53.0