Commit 4db7fcdf authored by Sachin Kamat's avatar Sachin Kamat Committed by Inki Dae

drm/exynos: Add NULL pointer check

devm_kzalloc can fail. Hence check the pointer to avoid NULL pointer
dereferencing.
Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: default avatarInki Dae <inki.dae@samsung.com>
parent 38bb5253
...@@ -47,10 +47,16 @@ int drm_create_iommu_mapping(struct drm_device *drm_dev) ...@@ -47,10 +47,16 @@ int drm_create_iommu_mapping(struct drm_device *drm_dev)
dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms), dev->dma_parms = devm_kzalloc(dev, sizeof(*dev->dma_parms),
GFP_KERNEL); GFP_KERNEL);
if (!dev->dma_parms)
goto error;
dma_set_max_seg_size(dev, 0xffffffffu); dma_set_max_seg_size(dev, 0xffffffffu);
dev->archdata.mapping = mapping; dev->archdata.mapping = mapping;
return 0; return 0;
error:
arm_iommu_release_mapping(mapping);
return -ENOMEM;
} }
/* /*
...@@ -91,6 +97,9 @@ int drm_iommu_attach_device(struct drm_device *drm_dev, ...@@ -91,6 +97,9 @@ int drm_iommu_attach_device(struct drm_device *drm_dev,
subdrv_dev->dma_parms = devm_kzalloc(subdrv_dev, subdrv_dev->dma_parms = devm_kzalloc(subdrv_dev,
sizeof(*subdrv_dev->dma_parms), sizeof(*subdrv_dev->dma_parms),
GFP_KERNEL); GFP_KERNEL);
if (!subdrv_dev->dma_parms)
return -ENOMEM;
dma_set_max_seg_size(subdrv_dev, 0xffffffffu); dma_set_max_seg_size(subdrv_dev, 0xffffffffu);
ret = arm_iommu_attach_device(subdrv_dev, dev->archdata.mapping); ret = arm_iommu_attach_device(subdrv_dev, dev->archdata.mapping);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment