diff options
Diffstat (limited to 'drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c')
-rw-r--r-- | drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c b/drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c index 9692e5b..a6691ed 100644 --- a/drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c +++ b/drivers/media/video/samsung/ump/linux/ump_ukk_ref_wrappers.c @@ -89,7 +89,6 @@ int ump_allocate_wrapper(u32 __user * argument, struct ump_session_data * sessi return 0; /* success */ } - #ifdef CONFIG_ION_EXYNOS /* * IOCTL operation; Import fd to UMP memory @@ -130,6 +129,12 @@ int ump_ion_import_wrapper(u32 __user * argument, struct ump_session_data * ses sg_ion = ion_map_dma(ion_client_ump,ion_hnd); blocks = (ump_dd_physical_block*)_mali_osk_malloc(sizeof(ump_dd_physical_block)*1024); + + if (NULL == blocks) { + MSG_ERR(("Failed to allocate blocks in ump_ioctl_allocate()\n")); + return -ENOMEM; + } + sg = sg_ion; do { blocks[i].addr = sg_phys(sg); |