iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context
authorLiu Xiang <liuxiang_1999@126.com>
Mon, 16 Sep 2019 13:53:00 +0000 (21:53 +0800)
committerWill Deacon <will@kernel.org>
Tue, 1 Oct 2019 11:13:16 +0000 (12:13 +0100)
When alloc_io_pgtable_ops is failed, context bitmap which is just allocated
by __arm_smmu_alloc_bitmap should be freed to release the resource.

Signed-off-by: Liu Xiang <liuxiang_1999@126.com>
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm-smmu.c

index b18aac4..7c503a6 100644 (file)
@@ -812,6 +812,7 @@ static int arm_smmu_init_domain_context(struct iommu_domain *domain,
        return 0;
 
 out_clear_smmu:
+       __arm_smmu_free_bitmap(smmu->context_map, cfg->cbndx);
        smmu_domain->smmu = NULL;
 out_unlock:
        mutex_unlock(&smmu_domain->init_mutex);