Browse Source

iommu/amd: Fix possible use after free in get_irq_table()

We should return NULL on error instead of the freed pointer.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Dan Carpenter 13 years ago
parent
commit
821f0f68ca
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/iommu/amd_iommu.c

+ 1 - 0
drivers/iommu/amd_iommu.c

@@ -3865,6 +3865,7 @@ static struct irq_remap_table *get_irq_table(u16 devid, bool ioapic)
 	table->table = kmem_cache_alloc(amd_iommu_irq_cache, GFP_ATOMIC);
 	if (!table->table) {
 		kfree(table);
+		table = NULL;
 		goto out;
 	}