IOMMU Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH next] iommu: intel: make DMAR_TABLE select IOMMU_API
@ 2020-10-12 12:31 Bartosz Golaszewski
  2020-10-13  1:27 ` Lu Baolu
  0 siblings, 1 reply; 3+ messages in thread
From: Bartosz Golaszewski @ 2020-10-12 12:31 UTC (permalink / raw)
  To: David Woodhouse, Lu Baolu, Joerg Roedel
  Cc: Bartosz Golaszewski, iommu, linux-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
with no supported address widths") dmar.c needs struct iommu_device to
be defined. We need to unconditionally select IOMMU_API when DMAR_TABLE
is selected. This fixes the following build error when IOMMU_API is not
selected:

drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
 1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
                                                ^

Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/iommu/intel/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iommu/intel/Kconfig b/drivers/iommu/intel/Kconfig
index 5337ee1584b0..f814b7585ba8 100644
--- a/drivers/iommu/intel/Kconfig
+++ b/drivers/iommu/intel/Kconfig
@@ -1,13 +1,13 @@
 # SPDX-License-Identifier: GPL-2.0-only
 # Intel IOMMU support
 config DMAR_TABLE
+	select IOMMU_API
 	bool
 
 config INTEL_IOMMU
 	bool "Support for Intel IOMMU using DMA Remapping Devices"
 	depends on PCI_MSI && ACPI && (X86 || IA64)
 	select DMA_OPS
-	select IOMMU_API
 	select IOMMU_IOVA
 	select NEED_DMA_MAP_STATE
 	select DMAR_TABLE
-- 
2.28.0

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH next] iommu: intel: make DMAR_TABLE select IOMMU_API
  2020-10-12 12:31 [PATCH next] iommu: intel: make DMAR_TABLE select IOMMU_API Bartosz Golaszewski
@ 2020-10-13  1:27 ` Lu Baolu
  2020-10-13  7:31   ` Bartosz Golaszewski
  0 siblings, 1 reply; 3+ messages in thread
From: Lu Baolu @ 2020-10-13  1:27 UTC (permalink / raw)
  To: Bartosz Golaszewski, David Woodhouse, Joerg Roedel
  Cc: Bartosz Golaszewski, iommu, linux-kernel

Hi,

On 10/12/20 8:31 PM, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> with no supported address widths") dmar.c needs struct iommu_device to
> be defined. We need to unconditionally select IOMMU_API when DMAR_TABLE
> is selected. This fixes the following build error when IOMMU_API is not
> selected:
> 
> drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
>   1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {

Thanks!

How about making it symmetric with the registration code?

	if (intel_iommu_enabled && !iommu->drhd->ignored)

Best regards,
baolu

>                                                  ^
> 
> Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> ---
>   drivers/iommu/intel/Kconfig | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iommu/intel/Kconfig b/drivers/iommu/intel/Kconfig
> index 5337ee1584b0..f814b7585ba8 100644
> --- a/drivers/iommu/intel/Kconfig
> +++ b/drivers/iommu/intel/Kconfig
> @@ -1,13 +1,13 @@
>   # SPDX-License-Identifier: GPL-2.0-only
>   # Intel IOMMU support
>   config DMAR_TABLE
> +	select IOMMU_API
>   	bool
>   
>   config INTEL_IOMMU
>   	bool "Support for Intel IOMMU using DMA Remapping Devices"
>   	depends on PCI_MSI && ACPI && (X86 || IA64)
>   	select DMA_OPS
> -	select IOMMU_API
>   	select IOMMU_IOVA
>   	select NEED_DMA_MAP_STATE
>   	select DMAR_TABLE
> 
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH next] iommu: intel: make DMAR_TABLE select IOMMU_API
  2020-10-13  1:27 ` Lu Baolu
@ 2020-10-13  7:31   ` Bartosz Golaszewski
  0 siblings, 0 replies; 3+ messages in thread
From: Bartosz Golaszewski @ 2020-10-13  7:31 UTC (permalink / raw)
  To: Lu Baolu
  Cc: Bartosz Golaszewski, David Woodhouse, iommu, Linux Kernel Mailing List

On Tue, Oct 13, 2020 at 3:33 AM Lu Baolu <baolu.lu@linux.intel.com> wrote:
>
> Hi,
>
> On 10/12/20 8:31 PM, Bartosz Golaszewski wrote:
> > From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >
> > Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> > with no supported address widths") dmar.c needs struct iommu_device to
> > be defined. We need to unconditionally select IOMMU_API when DMAR_TABLE
> > is selected. This fixes the following build error when IOMMU_API is not
> > selected:
> >
> > drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> > drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
> >   1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
>
> Thanks!
>
> How about making it symmetric with the registration code?
>
>         if (intel_iommu_enabled && !iommu->drhd->ignored)
>
> Best regards,
> baolu
>

Sounds good, just sent out a patch.

Bartosz
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, back to index

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-12 12:31 [PATCH next] iommu: intel: make DMAR_TABLE select IOMMU_API Bartosz Golaszewski
2020-10-13  1:27 ` Lu Baolu
2020-10-13  7:31   ` Bartosz Golaszewski

IOMMU Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-iommu/0 linux-iommu/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-iommu linux-iommu/ https://lore.kernel.org/linux-iommu \
		iommu@lists.linux-foundation.org
	public-inbox-index linux-iommu

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.linux-foundation.lists.iommu


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git