aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/vfio
diff options
context:
space:
mode:
authorAlexey Kardashevskiy <aik@ozlabs.ru>2017-03-27 14:23:40 +1100
committerAlex Williamson <alex.williamson@redhat.com>2017-04-11 13:40:09 -0600
commit3393af24b665cb0aea7353b05e522b03ab1e7d73 (patch)
tree4cead9a9bc1979fa5e333fca7a9b6185b405ee0b /drivers/vfio
parentvfio/powerpc/spapr_tce: Enforce IOMMU type compatibility check (diff)
downloadlinux-dev-3393af24b665cb0aea7353b05e522b03ab1e7d73.tar.xz
linux-dev-3393af24b665cb0aea7353b05e522b03ab1e7d73.zip
vfio/spapr_tce: Check kzalloc() return when preregistering memory
This adds missing checking for kzalloc() return value. Fixes: 4b6fad7097f8 ("powerpc/mm/iommu, vfio/spapr: Put pages on VFIO container shutdown") Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'drivers/vfio')
-rw-r--r--drivers/vfio/vfio_iommu_spapr_tce.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/vfio/vfio_iommu_spapr_tce.c b/drivers/vfio/vfio_iommu_spapr_tce.c
index a7d811524092..78dca1aa6410 100644
--- a/drivers/vfio/vfio_iommu_spapr_tce.c
+++ b/drivers/vfio/vfio_iommu_spapr_tce.c
@@ -198,6 +198,11 @@ static long tce_iommu_register_pages(struct tce_container *container,
return ret;
tcemem = kzalloc(sizeof(*tcemem), GFP_KERNEL);
+ if (!tcemem) {
+ mm_iommu_put(container->mm, mem);
+ return -ENOMEM;
+ }
+
tcemem->mem = mem;
list_add(&tcemem->next, &container->prereg_list);