From: Bjorn Helgaas <helgaas@kernel.org>
To: Dheeraj Kumar Srivastava <dheerajkumar.srivastava@amd.com>
Cc: joro@8bytes.org, suravee.suthikulpanit@amd.com, will@kernel.org,
robin.murphy@arm.com, linux-kernel@vger.kernel.org,
iommu@lists.linux.dev, vasant.hegde@amd.com
Subject: Re: [PATCH v2 1/8] iommu/amd: Refactor AMD IOMMU debugfs initial setup
Date: Tue, 26 Nov 2024 13:12:28 -0600 [thread overview]
Message-ID: <20241126191228.GA2650296@bhelgaas> (raw)
In-Reply-To: <20241106074639.2039-2-dheerajkumar.srivastava@amd.com>
On Wed, Nov 06, 2024 at 01:16:32PM +0530, Dheeraj Kumar Srivastava wrote:
> Rearrange initial setup of AMD IOMMU debugfs to segregate per IOMMU
> setup and setup which is common for all IOMMUs. This ensures that common
> debugfs paths (introduced in subsequent patches) are created only once
> instead of being created for each IOMMU.
> ...
> -void amd_iommu_debugfs_setup(struct amd_iommu *iommu)
> +void amd_iommu_debugfs_setup(void)
> {
> + struct amd_iommu *iommu;
> char name[MAX_NAME_LEN + 1];
>
> - mutex_lock(&amd_iommu_debugfs_lock);
> - if (!amd_iommu_debugfs)
> - amd_iommu_debugfs = debugfs_create_dir("amd",
> - iommu_debugfs_dir);
> - mutex_unlock(&amd_iommu_debugfs_lock);
> + amd_iommu_debugfs = debugfs_create_dir("amd", iommu_debugfs_dir);
>
> - snprintf(name, MAX_NAME_LEN, "iommu%02d", iommu->index);
> - iommu->debugfs = debugfs_create_dir(name, amd_iommu_debugfs);
> + for_each_iommu(iommu) {
> + snprintf(name, MAX_NAME_LEN, "iommu%02d", iommu->index);
> + iommu->debugfs = debugfs_create_dir(name, amd_iommu_debugfs);
> + }
Doing this setup with for_each_iommu() precludes any hot-add of
IOMMUs, but I guess there's no indication of hotplug support anyway
given all the uses of for_each_iommu() in init_iommu_all(),
amd_iommu_init_pci(), amd_iommu_enable_interrupts(), etc.
> }
> diff --git a/drivers/iommu/amd/init.c b/drivers/iommu/amd/init.c
> index 43131c3a2172..d78dc96bbec3 100644
> --- a/drivers/iommu/amd/init.c
> +++ b/drivers/iommu/amd/init.c
> @@ -3377,7 +3377,6 @@ int amd_iommu_enable_faulting(unsigned int cpu)
> */
> static int __init amd_iommu_init(void)
> {
> - struct amd_iommu *iommu;
> int ret;
>
> ret = iommu_go_to_state(IOMMU_INITIALIZED);
> @@ -3391,8 +3390,8 @@ static int __init amd_iommu_init(void)
> }
> #endif
>
> - for_each_iommu(iommu)
> - amd_iommu_debugfs_setup(iommu);
> + if (!ret)
> + amd_iommu_debugfs_setup();
>
> return ret;
> }
> --
> 2.25.1
>
next prev parent reply other threads:[~2024-11-26 19:12 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-06 7:46 [PATCH v2 0/8] Introduce debugfs support in IOMMU Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 1/8] iommu/amd: Refactor AMD IOMMU debugfs initial setup Dheeraj Kumar Srivastava
2024-11-26 19:12 ` Bjorn Helgaas [this message]
2025-01-07 5:01 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 2/8] iommu/amd: Add debugfs support to dump IOMMU MMIO registers Dheeraj Kumar Srivastava
2024-11-26 20:58 ` Bjorn Helgaas
2025-01-07 5:27 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 3/8] iommu/amd: Add debugfs support to dump IOMMU Capability registers Dheeraj Kumar Srivastava
2024-11-26 20:59 ` Bjorn Helgaas
2025-01-07 6:03 ` Srivastava, Dheeraj Kumar
2025-01-07 20:18 ` Bjorn Helgaas
2025-01-15 5:06 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 4/8] iommu/amd: Add debugfs support to dump IOMMU command buffer Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 5/8] iommu/amd: Add support for device id user input Dheeraj Kumar Srivastava
2024-11-26 21:02 ` Bjorn Helgaas
2025-01-15 5:21 ` Srivastava, Dheeraj Kumar
2024-11-06 7:46 ` [PATCH v2 6/8] iommu/amd: Add debugfs support to dump device table Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 7/8] iommu/amd: Add debugfs support to dump IRT Table Dheeraj Kumar Srivastava
2024-11-06 7:46 ` [PATCH v2 8/8] iommu/amd: Add documentation for AMD IOMMU debugfs support Dheeraj Kumar Srivastava
2024-11-26 21:19 ` Bjorn Helgaas
2024-12-03 5:54 ` Srivastava, Dheeraj Kumar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241126191228.GA2650296@bhelgaas \
--to=helgaas@kernel.org \
--cc=dheerajkumar.srivastava@amd.com \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robin.murphy@arm.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=vasant.hegde@amd.com \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox