diff options
| -rw-r--r-- | drivers/iommu/intel-pasid.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/iommu/intel-pasid.c b/drivers/iommu/intel-pasid.c index 03b12d2ee213..2fefeafda437 100644 --- a/drivers/iommu/intel-pasid.c +++ b/drivers/iommu/intel-pasid.c | |||
| @@ -154,8 +154,10 @@ int intel_pasid_alloc_table(struct device *dev) | |||
| 154 | order = size ? get_order(size) : 0; | 154 | order = size ? get_order(size) : 0; |
| 155 | pages = alloc_pages_node(info->iommu->node, | 155 | pages = alloc_pages_node(info->iommu->node, |
| 156 | GFP_KERNEL | __GFP_ZERO, order); | 156 | GFP_KERNEL | __GFP_ZERO, order); |
| 157 | if (!pages) | 157 | if (!pages) { |
| 158 | kfree(pasid_table); | ||
| 158 | return -ENOMEM; | 159 | return -ENOMEM; |
| 160 | } | ||
| 159 | 161 | ||
| 160 | pasid_table->table = page_address(pages); | 162 | pasid_table->table = page_address(pages); |
| 161 | pasid_table->order = order; | 163 | pasid_table->order = order; |
