From ada8a223c6dd4c69b7f5068a8c13a12779698dd4 Mon Sep 17 00:00:00 2001 From: hjc Date: Fri, 15 May 2015 09:29:24 +0800 Subject: [PATCH] rk iommu: fix system panic when iommu pagefault Signed-off-by: Simon Signed-off-by: cmy --- drivers/iommu/rockchip-iovmm.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) mode change 100644 => 100755 drivers/iommu/rockchip-iovmm.c diff --git a/drivers/iommu/rockchip-iovmm.c b/drivers/iommu/rockchip-iovmm.c old mode 100644 new mode 100755 index bb68d16575dd..dffeab341311 --- a/drivers/iommu/rockchip-iovmm.c +++ b/drivers/iommu/rockchip-iovmm.c @@ -146,9 +146,12 @@ dma_addr_t rockchip_iovmm_map(struct device *dev, spin_unlock(&vmm->lock); ret = rockchip_iommu_tlb_invalidate(dev); - if (ret) + if (ret) { + spin_lock(&vmm->lock); + list_del(®ion->node); + spin_unlock(&vmm->lock); goto err_map_map; - + } dev_dbg(dev->archdata.iommu, "IOVMM: Allocated VM region @ %p/%#X bytes.\n", ®ion->start, region->size); -- 2.34.1