From: Steve Wahl <steve.wahl@hpe.com> To: Joerg Roedel <jroedel@suse.de>, Kyung Min Park <kyung.min.park@intel.com>, Lu Baolu <baolu.lu@linux.intel.com>, David Woodhouse <dwmw2@infradead.org>, Will Deacon <will@kernel.org>, iommu@lists.linux-foundation.org, Kevin Tian <kevin.tian@intel.com>, Jerry Snitselaar <jsnitsel@redhat.com> Cc: Mike Travis <mike.travis@hpe.com>, Dimitri Sivanich <sivanich@hpe.com>, Steve Wahl <steve.wahl@hpe.com>, Russ Anderson <russ.anderson@hpe.com>, linux-kernel@vger.kernel.org Subject: [PATCH v3] iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting Date: Wed, 15 Jun 2022 13:36:50 -0500 [thread overview] Message-ID: <20220615183650.32075-1-steve.wahl@hpe.com> (raw) In-Reply-To: <9d6177ac-802f-eb11-4307-b0e49d8126b5@linux.intel.com> To support up to 64 sockets with 10 DMAR units each (640), make the value of DMAR_UNITS_SUPPORTED adjustable by a config variable, CONFIG_DMAR_UNITS_SUPPORTED, and make it's default 1024 when MAXSMP is set. If the available hardware exceeds DMAR_UNITS_SUPPORTED (previously set to MAX_IO_APICS, or 128), it causes these messages: "DMAR: Failed to allocate seq_id", "DMAR: Parse DMAR table failure.", and "x2apic: IRQ remapping doesn't support X2APIC mode x2apic disabled"; and the system fails to boot properly. Signed-off-by: Steve Wahl <steve.wahl@hpe.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> --- Note that we could not find a reason for connecting DMAR_UNITS_SUPPORTED to MAX_IO_APICS as was done previously. Perhaps it seemed like the two would continue to match on earlier processors. There doesn't appear to be kernel code that assumes that the value of one is related to the other. v2: Make this value a config option, rather than a fixed constant. The default values should match previous configuration except in the MAXSMP case. Keeping the value at a power of two was requested by Kevin Tian. v3: Make the config option dependent upon DMAR_TABLE, as it is not used without this. drivers/iommu/intel/Kconfig | 7 +++++++ include/linux/dmar.h | 6 +----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/iommu/intel/Kconfig b/drivers/iommu/intel/Kconfig index 39a06d245f12..07aaebcb581d 100644 --- a/drivers/iommu/intel/Kconfig +++ b/drivers/iommu/intel/Kconfig @@ -9,6 +9,13 @@ config DMAR_PERF config DMAR_DEBUG bool +config DMAR_UNITS_SUPPORTED + int "Number of DMA Remapping Units supported" + depends on DMAR_TABLE + default 1024 if MAXSMP + default 128 if X86_64 + default 64 + config INTEL_IOMMU bool "Support for Intel IOMMU using DMA Remapping Devices" depends on PCI_MSI && ACPI && (X86 || IA64) diff --git a/include/linux/dmar.h b/include/linux/dmar.h index 45e903d84733..0c03c1845c23 100644 --- a/include/linux/dmar.h +++ b/include/linux/dmar.h @@ -18,11 +18,7 @@ struct acpi_dmar_header; -#ifdef CONFIG_X86 -# define DMAR_UNITS_SUPPORTED MAX_IO_APICS -#else -# define DMAR_UNITS_SUPPORTED 64 -#endif +#define DMAR_UNITS_SUPPORTED CONFIG_DMAR_UNITS_SUPPORTED /* DMAR Flags */ #define DMAR_INTR_REMAP 0x1 -- 2.26.2
WARNING: multiple messages have this Message-ID (diff)
From: Steve Wahl <steve.wahl@hpe.com> To: Joerg Roedel <jroedel@suse.de>, Kyung Min Park <kyung.min.park@intel.com>, Lu Baolu <baolu.lu@linux.intel.com>, David Woodhouse <dwmw2@infradead.org>, Will Deacon <will@kernel.org>, iommu@lists.linux-foundation.org, Kevin Tian <kevin.tian@intel.com>, Jerry Snitselaar <jsnitsel@redhat.com> Cc: Mike Travis <mike.travis@hpe.com>, Dimitri Sivanich <sivanich@hpe.com>, linux-kernel@vger.kernel.org, Russ Anderson <russ.anderson@hpe.com>, Steve Wahl <steve.wahl@hpe.com> Subject: [PATCH v3] iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting Date: Wed, 15 Jun 2022 13:36:50 -0500 [thread overview] Message-ID: <20220615183650.32075-1-steve.wahl@hpe.com> (raw) In-Reply-To: <9d6177ac-802f-eb11-4307-b0e49d8126b5@linux.intel.com> To support up to 64 sockets with 10 DMAR units each (640), make the value of DMAR_UNITS_SUPPORTED adjustable by a config variable, CONFIG_DMAR_UNITS_SUPPORTED, and make it's default 1024 when MAXSMP is set. If the available hardware exceeds DMAR_UNITS_SUPPORTED (previously set to MAX_IO_APICS, or 128), it causes these messages: "DMAR: Failed to allocate seq_id", "DMAR: Parse DMAR table failure.", and "x2apic: IRQ remapping doesn't support X2APIC mode x2apic disabled"; and the system fails to boot properly. Signed-off-by: Steve Wahl <steve.wahl@hpe.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> --- Note that we could not find a reason for connecting DMAR_UNITS_SUPPORTED to MAX_IO_APICS as was done previously. Perhaps it seemed like the two would continue to match on earlier processors. There doesn't appear to be kernel code that assumes that the value of one is related to the other. v2: Make this value a config option, rather than a fixed constant. The default values should match previous configuration except in the MAXSMP case. Keeping the value at a power of two was requested by Kevin Tian. v3: Make the config option dependent upon DMAR_TABLE, as it is not used without this. drivers/iommu/intel/Kconfig | 7 +++++++ include/linux/dmar.h | 6 +----- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/iommu/intel/Kconfig b/drivers/iommu/intel/Kconfig index 39a06d245f12..07aaebcb581d 100644 --- a/drivers/iommu/intel/Kconfig +++ b/drivers/iommu/intel/Kconfig @@ -9,6 +9,13 @@ config DMAR_PERF config DMAR_DEBUG bool +config DMAR_UNITS_SUPPORTED + int "Number of DMA Remapping Units supported" + depends on DMAR_TABLE + default 1024 if MAXSMP + default 128 if X86_64 + default 64 + config INTEL_IOMMU bool "Support for Intel IOMMU using DMA Remapping Devices" depends on PCI_MSI && ACPI && (X86 || IA64) diff --git a/include/linux/dmar.h b/include/linux/dmar.h index 45e903d84733..0c03c1845c23 100644 --- a/include/linux/dmar.h +++ b/include/linux/dmar.h @@ -18,11 +18,7 @@ struct acpi_dmar_header; -#ifdef CONFIG_X86 -# define DMAR_UNITS_SUPPORTED MAX_IO_APICS -#else -# define DMAR_UNITS_SUPPORTED 64 -#endif +#define DMAR_UNITS_SUPPORTED CONFIG_DMAR_UNITS_SUPPORTED /* DMAR Flags */ #define DMAR_INTR_REMAP 0x1 -- 2.26.2 _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
next prev parent reply other threads:[~2022-06-15 18:37 UTC|newest] Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-05 19:46 [PATCH] iommu/vt-d: Increase DMAR_UNITS_SUPPORTED Steve Wahl 2022-05-05 19:46 ` Steve Wahl 2022-05-06 5:57 ` Baolu Lu 2022-05-06 5:57 ` Baolu Lu 2022-05-06 6:49 ` Tian, Kevin 2022-05-06 6:49 ` Tian, Kevin 2022-05-06 7:10 ` Rodel, Jorg 2022-05-06 7:10 ` Rodel, Jorg 2022-05-06 7:47 ` Tian, Kevin 2022-05-06 7:47 ` Tian, Kevin 2022-05-06 7:16 ` David Woodhouse 2022-05-06 7:16 ` David Woodhouse 2022-05-06 8:12 ` Tian, Kevin 2022-05-06 8:12 ` Tian, Kevin 2022-05-06 15:26 ` Steve Wahl 2022-05-06 15:26 ` Steve Wahl 2022-05-10 1:16 ` Tian, Kevin 2022-05-10 1:16 ` Tian, Kevin 2022-05-10 19:06 ` Steve Wahl 2022-05-10 19:06 ` Steve Wahl 2022-05-11 3:36 ` Tian, Kevin 2022-05-11 3:36 ` Tian, Kevin 2022-05-12 15:13 ` [PATCH v2] iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting Steve Wahl 2022-05-12 15:13 ` Steve Wahl 2022-05-12 23:12 ` Steve Wahl 2022-05-12 23:12 ` Steve Wahl 2022-05-13 2:09 ` Baolu Lu 2022-05-13 2:09 ` Baolu Lu 2022-05-18 19:58 ` Steve Wahl 2022-05-18 19:58 ` Steve Wahl 2022-05-23 6:43 ` Tian, Kevin 2022-05-23 6:43 ` Tian, Kevin 2022-06-13 20:38 ` Jerry Snitselaar 2022-06-13 20:38 ` Jerry Snitselaar 2022-06-14 1:33 ` Baolu Lu 2022-06-14 1:33 ` Baolu Lu 2022-06-13 20:57 ` Jerry Snitselaar 2022-06-13 20:57 ` Jerry Snitselaar 2022-06-14 1:36 ` Baolu Lu 2022-06-14 1:36 ` Baolu Lu 2022-06-14 1:44 ` Jerry Snitselaar 2022-06-14 1:44 ` Jerry Snitselaar 2022-06-14 1:51 ` Baolu Lu 2022-06-14 1:51 ` Baolu Lu 2022-06-14 1:54 ` Jerry Snitselaar 2022-06-14 1:54 ` Jerry Snitselaar 2022-06-14 2:21 ` Baolu Lu 2022-06-14 2:21 ` Baolu Lu 2022-06-14 16:45 ` Steve Wahl 2022-06-14 16:45 ` Steve Wahl 2022-06-14 19:01 ` Jerry Snitselaar 2022-06-14 19:01 ` Jerry Snitselaar 2022-06-14 21:12 ` Steve Wahl 2022-06-14 21:12 ` Steve Wahl 2022-06-15 1:38 ` Baolu Lu 2022-06-15 1:38 ` Baolu Lu 2022-06-15 15:02 ` Steve Wahl 2022-06-15 15:02 ` Steve Wahl 2022-06-15 18:36 ` Steve Wahl [this message] 2022-06-15 18:36 ` [PATCH v3] " Steve Wahl 2022-06-15 18:39 ` Jerry Snitselaar 2022-06-15 18:39 ` Jerry Snitselaar 2022-06-22 14:52 ` Baolu Lu 2022-06-22 14:52 ` Baolu Lu 2022-06-22 15:05 ` Jerry Snitselaar 2022-06-22 15:05 ` Jerry Snitselaar 2022-06-22 15:11 ` Steve Wahl 2022-06-22 15:11 ` Steve Wahl 2022-06-23 2:29 ` Baolu Lu 2022-06-23 2:29 ` Baolu Lu 2022-06-23 2:51 ` Jerry Snitselaar 2022-06-23 2:51 ` Jerry Snitselaar 2022-06-23 3:38 ` Baolu Lu 2022-06-23 3:38 ` Baolu Lu
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=20220615183650.32075-1-steve.wahl@hpe.com \ --to=steve.wahl@hpe.com \ --cc=baolu.lu@linux.intel.com \ --cc=dwmw2@infradead.org \ --cc=iommu@lists.linux-foundation.org \ --cc=jroedel@suse.de \ --cc=jsnitsel@redhat.com \ --cc=kevin.tian@intel.com \ --cc=kyung.min.park@intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=mike.travis@hpe.com \ --cc=russ.anderson@hpe.com \ --cc=sivanich@hpe.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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.