[PATCH] drm/exynos: iommu: fix potential NULL pointer dereference

2015-07-02 Thread Joonyoung Shim
On 06/29/2015 03:35 PM, Hyungwon Hwang wrote:
> Dear Marek,
> 
> On Thu, 25 Jun 2015 15:10:12 +0200
> Marek Szyprowski  wrote:
> 
>> Some drivers (like Exynos mixer) calls
>> drm_iommu_attach_device_if_possible before registering crtc, so
>> additional check for NULL crtc pointer is required.
> 
> It seems reasonable.
> 
> Reviewed-by: Hyungwon Hwang 
> 

This patch is ok but i think it can remove to use clear_channels
function pointer and drm_iommu_attach_device_if_possible function
because already drm_iommu_attach_device function checks whether support
iommu internally.

I will ready related patch.

Thanks.

>>
>> Signed-off-by: Marek Szyprowski 
>> ---
>>  drivers/gpu/drm/exynos/exynos_drm_iommu.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_iommu.c
>> b/drivers/gpu/drm/exynos/exynos_drm_iommu.c index
>> d4ec7465e9cc..d4eb730ba254 100644 ---
>> a/drivers/gpu/drm/exynos/exynos_drm_iommu.c +++
>> b/drivers/gpu/drm/exynos/exynos_drm_iommu.c @@ -151,7 +151,7 @@ int
>> drm_iommu_attach_device_if_possible(struct exynos_drm_crtc
>> *exynos_crtc, int ret = 0; 
>>  if (is_drm_iommu_supported(drm_dev)) {
>> -if (exynos_crtc->ops->clear_channels)
>> +if (exynos_crtc && exynos_crtc->ops->clear_channels)
>>  exynos_crtc->ops->clear_channels(exynos_crtc);
>>  return drm_iommu_attach_device(drm_dev, subdrv_dev);
>>  }
> 
> 



[PATCH] drm/exynos: iommu: fix potential NULL pointer dereference

2015-06-29 Thread Hyungwon Hwang
Dear Marek,

On Thu, 25 Jun 2015 15:10:12 +0200
Marek Szyprowski  wrote:

> Some drivers (like Exynos mixer) calls
> drm_iommu_attach_device_if_possible before registering crtc, so
> additional check for NULL crtc pointer is required.

It seems reasonable.

Reviewed-by: Hyungwon Hwang 

> 
> Signed-off-by: Marek Szyprowski 
> ---
>  drivers/gpu/drm/exynos/exynos_drm_iommu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_iommu.c
> b/drivers/gpu/drm/exynos/exynos_drm_iommu.c index
> d4ec7465e9cc..d4eb730ba254 100644 ---
> a/drivers/gpu/drm/exynos/exynos_drm_iommu.c +++
> b/drivers/gpu/drm/exynos/exynos_drm_iommu.c @@ -151,7 +151,7 @@ int
> drm_iommu_attach_device_if_possible(struct exynos_drm_crtc
> *exynos_crtc, int ret = 0; 
>   if (is_drm_iommu_supported(drm_dev)) {
> - if (exynos_crtc->ops->clear_channels)
> + if (exynos_crtc && exynos_crtc->ops->clear_channels)
>   exynos_crtc->ops->clear_channels(exynos_crtc);
>   return drm_iommu_attach_device(drm_dev, subdrv_dev);
>   }



[PATCH] drm/exynos: iommu: fix potential NULL pointer dereference

2015-06-25 Thread Marek Szyprowski
Some drivers (like Exynos mixer) calls drm_iommu_attach_device_if_possible
before registering crtc, so additional check for NULL crtc pointer is
required.

Signed-off-by: Marek Szyprowski 
---
 drivers/gpu/drm/exynos/exynos_drm_iommu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/exynos/exynos_drm_iommu.c 
b/drivers/gpu/drm/exynos/exynos_drm_iommu.c
index d4ec7465e9cc..d4eb730ba254 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_iommu.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_iommu.c
@@ -151,7 +151,7 @@ int drm_iommu_attach_device_if_possible(struct 
exynos_drm_crtc *exynos_crtc,
int ret = 0;

if (is_drm_iommu_supported(drm_dev)) {
-   if (exynos_crtc->ops->clear_channels)
+   if (exynos_crtc && exynos_crtc->ops->clear_channels)
exynos_crtc->ops->clear_channels(exynos_crtc);
return drm_iommu_attach_device(drm_dev, subdrv_dev);
}
-- 
1.9.2