[PATCH] drm/exynos: fix double call of drm_prime_(init/destroy)_file_private

김승우 sw0312.kim at samsung.com
Wed Sep 5 19:15:11 PDT 2012


Hi Mandeep,

On 2012년 09월 06일 06:47, Mandeep Singh Baines wrote:
> The double invocations are incorrect but seem to be safe so I don't
> think this will fix any bugs.
> 
> Before:
> 
> [    7.639366] drm_prime_init_file ee3675d0
> [    7.639377] drm_prime_init_file ee3675d0
> [    7.639507] drm_prime_destroy_file ee3675d0
> [    7.639518] drm_prime_destroy_file ee3675d0
> [    7.639802] drm_prime_init_file ee372390
> [    7.639810] drm_prime_init_file ee372390
> [    8.473316] drm_prime_init_file ee356390
> [    8.473331] drm_prime_init_file ee356390
> 
> After:
> 
> [    6.363842] drm_prime_init_file edc2e5d0
> [    6.363994] drm_prime_destroy_file edc2e5d0
> [    6.364260] drm_prime_init_file edc2e750
> [    8.004837] drm_prime_init_file ee36ded0
> 

You are right. prime file_priv is handled by drm_fops.c, so it can be
removed from exynos drm.

Thanks for your patch.

> Signed-off-by: Mandeep Singh Baines <msb at chromium.org>
> CC: Stéphane Marchesin <marcheu at chromium.org>
> CC: Pawel Osciak <posciak at google.com>
> CC: Inki Dae <inki.dae at samsung.com>
> CC: Joonyoung Shim <jy0922.shim at samsung.com>
> CC: Seung-Woo Kim <sw0312.kim at samsung.com>
> CC: Kyungmin Park <kyungmin.park at samsung.com>
> CC: David Airlie <airlied at linux.ie>
> CC: dri-devel at lists.freedesktop.org

Acked-by: Seung-Woo Kim <sw0312.kim at samsung.com>

> ---
>  drivers/gpu/drm/exynos/exynos_drm_drv.c |    2 --
>  1 files changed, 0 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
> index ebacec6..a27b8ff 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
> @@ -160,7 +160,6 @@ static int exynos_drm_open(struct drm_device *dev, struct drm_file *file)
>  	if (!file_priv)
>  		return -ENOMEM;
>  
> -	drm_prime_init_file_private(&file->prime);
>  	file->driver_priv = file_priv;
>  
>  	return exynos_drm_subdrv_open(dev, file);
> @@ -184,7 +183,6 @@ static void exynos_drm_preclose(struct drm_device *dev,
>  			e->base.destroy(&e->base);
>  		}
>  	}
> -	drm_prime_destroy_file_private(&file->prime);
>  	spin_unlock_irqrestore(&dev->event_lock, flags);
>  
>  	exynos_drm_subdrv_close(dev, file);
> 

-- 
Seung-Woo Kim
Samsung Software R&D Center
--



More information about the dri-devel mailing list