diff mbox series

drm/i915/selftests: fix check for intel IOMMU

Message ID 20171005120749.400818-1-arnd@arndb.de
State Accepted
Commit 764d2997ec0edbb48f12e6477ccaceecd999091d
Headers show
Series drm/i915/selftests: fix check for intel IOMMU | expand

Commit Message

Arnd Bergmann Oct. 5, 2017, 12:07 p.m. UTC
An earlier bugfix tried to work around this build failure:

drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':
drivers/gpu/drm/i915/selftests/mock_gem_device.c:151:20: error: 'struct dev_archdata' has no member named 'iommu'

Checking for CONFIG_IOMMU_API is not sufficient as a compile-time
test since that may be enabled in configurations that have neither
INTEL_IOMMU not AMD_IOMMU enabled. This changes the check to
INTEL_IOMMU instead, as this is the only case we actually care about.

Fixes: f46f156ea770 ("drm/i915/selftests: Only touch archdata.iommu when it exists")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 drivers/gpu/drm/i915/selftests/mock_gem_device.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.9.0

Comments

Chris Wilson Oct. 5, 2017, 12:17 p.m. UTC | #1
Quoting Arnd Bergmann (2017-10-05 13:07:22)
> An earlier bugfix tried to work around this build failure:

> 

> drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':

> drivers/gpu/drm/i915/selftests/mock_gem_device.c:151:20: error: 'struct dev_archdata' has no member named 'iommu'

> 

> Checking for CONFIG_IOMMU_API is not sufficient as a compile-time

> test since that may be enabled in configurations that have neither

> INTEL_IOMMU not AMD_IOMMU enabled. This changes the check to

> INTEL_IOMMU instead, as this is the only case we actually care about.

> 

> Fixes: f46f156ea770 ("drm/i915/selftests: Only touch archdata.iommu when it exists")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>


I'll take your wisdom. I was lost trying to nail down exactly what
config options we needed to check and settled for something that
appeared good enough (for the small selection of configs I tested).

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

-Chris
Daniel Vetter Oct. 5, 2017, 1:26 p.m. UTC | #2
On Thu, Oct 05, 2017 at 01:17:11PM +0100, Chris Wilson wrote:
> Quoting Arnd Bergmann (2017-10-05 13:07:22)

> > An earlier bugfix tried to work around this build failure:

> > 

> > drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':

> > drivers/gpu/drm/i915/selftests/mock_gem_device.c:151:20: error: 'struct dev_archdata' has no member named 'iommu'

> > 

> > Checking for CONFIG_IOMMU_API is not sufficient as a compile-time

> > test since that may be enabled in configurations that have neither

> > INTEL_IOMMU not AMD_IOMMU enabled. This changes the check to

> > INTEL_IOMMU instead, as this is the only case we actually care about.

> > 

> > Fixes: f46f156ea770 ("drm/i915/selftests: Only touch archdata.iommu when it exists")

> > Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> 

> I'll take your wisdom. I was lost trying to nail down exactly what

> config options we needed to check and settled for something that

> appeared good enough (for the small selection of configs I tested).

> 

> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>


Pushed, thanks.
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
index 2388424a14da..3b7877884dd1 100644
--- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c
+++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
@@ -146,7 +146,7 @@  struct drm_i915_private *mock_gem_device(void)
 	dev_set_name(&pdev->dev, "mock");
 	dma_coerce_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
 
-#if IS_ENABLED(CONFIG_IOMMU_API)
+#if IS_ENABLED(CONFIG_IOMMU_API) && defined(CONFIG_INTEL_IOMMU)
 	/* hack to disable iommu for the fake device; force identity mapping */
 	pdev->dev.archdata.iommu = (void *)-1;
 #endif