From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E3C76C3DA64 for ; Thu, 1 Aug 2024 15:33:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=a4Rn/EJTI2LS3gDhYQPhAGy9OuCknsA+8YIqfgWBvxc=; b=RpZPE3e3AgNvU0C2XwRa2c2SiB nS6uNuxer327jKxltx7xcdrjz5d6lcPt1NYFYK3mMLr5CT+YENkQY1pD96L8AzaccgUoWbVgSCF/n fzaqeRjxeKzprk2Lj+FrIbqauTXw4v5bslcrFEVx9+9Uvk1iIa0w944WpK7hzfpWiEL1PVlya7wnY JexcdsCDA47G0s4WPrgIN7TJfJzGdEDzUGaR0U2uwx0FTl7L5HQAgaZws+wkFcZ09K6Fk5nPhH+fJ drMjx3FFb8t4r1uBMOVhaQ2ifQSLy8XftaGRJb4hVBRWmu/8avhFNRKKHR72JuR3Qrg54ePncd2/s Ygm/k9GA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sZXnt-00000005syO-15Cu; Thu, 01 Aug 2024 15:33:21 +0000 Received: from m16.mail.126.com ([220.197.31.7]) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sZXn9-00000005so6-0ihG for linux-arm-kernel@lists.infradead.org; Thu, 01 Aug 2024 15:32:52 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=a4Rn/ EJTI2LS3gDhYQPhAGy9OuCknsA+8YIqfgWBvxc=; b=N5vZEe7VGZdfbcpncBFeI b4hSunmUajasjKkX8RDbhPB2jKB136HbEuN79IuE7AQpbp+h3tXNFUut9vhbU3hJ FEDriY4sM9RsAgrSIzv7NgS09w8WI6OfWWUyrcPWM+NRnGa+w/lAcnK3OQ5m8CVT cZBsk9cO+XknD9F4hymiAc= Received: from nilq-virtual-machine.. (unknown [60.24.209.201]) by gzga-smtp-mta-g0-0 (Coremail) with SMTP id _____wD3H6LSqatmzGQsBA--.58175S2; Thu, 01 Aug 2024 23:29:24 +0800 (CST) From: niliqiang To: jean-philippe@linaro.org Cc: Jonathan.Cameron@huawei.com, baolu.lu@linux.intel.com, devicetree@vger.kernel.org, eric.auger@redhat.com, guohanjun@huawei.com, iommu@lists.linux-foundation.org, jacob.jun.pan@linux.intel.com, joro@8bytes.org, kevin.tian@intel.com, lenb@kernel.org, linux-accelerators@lists.ozlabs.org, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, lorenzo.pieralisi@arm.com, rjw@rjwysocki.net, robh+dt@kernel.org, robin.murphy@arm.com, shameerali.kolothum.thodi@huawei.com, sudeep.holla@arm.com, vivek.gautam@arm.com, wangzhou1@hisilicon.com, will@kernel.org, zhangfei.gao@linaro.org, zhukeqian1@huawei.com, ni.liqiang@zte.com.cn, li.zhichao@zte.com.cn Subject: Re: [PATCH v14 07/10] iommu/arm-smmu-v3: Maintain a SID->device structure Date: Thu, 1 Aug 2024 23:29:22 +0800 Message-Id: <20240801152922.5605-1-ni_liqiang@126.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20210401154718.307519-8-jean-philippe@linaro.org> References: <20210401154718.307519-8-jean-philippe@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID: _____wD3H6LSqatmzGQsBA--.58175S2 X-Coremail-Antispam: 1Uf129KBjvdXoWrKFW3trW8trW5ZF43XF4Utwb_yoWDGrb_Kr nYqFZ7WF4UArs8Jr45KasxW3sxtrZI9w18JrykZwn5WF1DJrZ5Crs7ArWrXayIgr4xCF1k trn5KrnxJwnxWjkaLaAFLSUrUUUUjb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IU14lk3UUUUU== X-Originating-IP: [60.24.209.201] X-CM-SenderInfo: xqlbzxxtld0wa6rslhhfrp/1tbiJBgu5WW-QgjyjAAAsZ X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240801_083235_831285_B2D4DE31 X-CRM114-Status: UNSURE ( 9.72 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org > +static int arm_smmu_insert_master(struct arm_smmu_device *smmu, > + struct arm_smmu_master *master) > +{ > + int i; > + int ret = 0; > + struct arm_smmu_stream *new_stream, *cur_stream; > + struct rb_node **new_node, *parent_node = NULL; > + struct iommu_fwspec *fwspec = dev_iommu_fwspec_get(master->dev); > + > + master->streams = kcalloc(fwspec->num_ids, sizeof(*master->streams), > + GFP_KERNEL); > + if (!master->streams) > + return -ENOMEM; > + master->num_streams = fwspec->num_ids; > + > + mutex_lock(&smmu->streams_mutex); > + for (i = 0; i < fwspec->num_ids; i++) { Hi all experts, Recently, I have been debugging the smmuv3 code in the Linux kernel, and I have some questions regarding the `mutex_lock(&smmu->streams_mutex)` statement in the `arm_smmu_insert_master` function. I would like to understand why streams_mutex is being locked here. Is it to handle different types of PF under a single EP, each with its own device ID? Thanks.