Browse Source

ARM: dma-mapping: NULLify dev->archdata.mapping pointer on detach

The current code only clobbers a local variable, so the device is left
with a stale mapping pointer.

Cc: Hiroshi Doyu <hdoyu@nvidia.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Acked-by: Hiroshi Doyu <hdoyu@nvidia.com>
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Will Deacon 12 years ago
parent
commit
9e4b259d4f
1 changed files with 1 additions and 1 deletions
  1. 1 1
      arch/arm/mm/dma-mapping.c

+ 1 - 1
arch/arm/mm/dma-mapping.c

@@ -1922,7 +1922,7 @@ void arm_iommu_detach_device(struct device *dev)
 
 	iommu_detach_device(mapping->domain, dev);
 	kref_put(&mapping->kref, release_iommu_mapping);
-	mapping = NULL;
+	dev->archdata.mapping = NULL;
 	set_dma_ops(dev, NULL);
 
 	pr_debug("Detached IOMMU controller from %s device.\n", dev_name(dev));