[PATCH 04/13] drm/exynos: drop DRM_AUTH from DRM_RENDER_ALLOW ioctls

Inki Dae inki.dae at samsung.com
Mon May 27 10:02:24 UTC 2019


Hi Emil,

19. 5. 27. 오후 5:17에 Emil Velikov 이(가) 쓴 글:
> From: Emil Velikov <emil.velikov at collabora.com>
> 
> The authentication can be circumvented, by design, by using the render
> node.
> 
>>From the driver POV there is no distinction between primary and render
> nodes, thus we can drop the token.
> 
> 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: Tobias Jakobi <tjakobi at math.uni-bielefeld.de>
> Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
> ---
> Gents, I've looked around for userspace and found only libdrm - the
> exynos library + simple apps and the X driver. All of which are safe
> with this patch.
> 
> Please have a look through other some open-source userspace that you
> have around.

Acked-by: Inki Dae <inki.dae at samsung.com>

Thanks,
Inki Dae

> 
> Tobias, you mentioned userspace projects (mpv, libretro, other) where
> you've added exynos backend. Can you please check they work fine with
> this patch?
> 
> Thanks
> Emil
> ---
>  drivers/gpu/drm/exynos/exynos_drm_drv.c | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c
> index e1ef9dc9ebf3..b461d89accff 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_drv.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c
> @@ -81,29 +81,29 @@ static const struct vm_operations_struct exynos_drm_gem_vm_ops = {
>  
>  static const struct drm_ioctl_desc exynos_ioctls[] = {
>  	DRM_IOCTL_DEF_DRV(EXYNOS_GEM_CREATE, exynos_drm_gem_create_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_GEM_MAP, exynos_drm_gem_map_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_GEM_GET, exynos_drm_gem_get_ioctl,
>  			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_VIDI_CONNECTION, vidi_connection_ioctl,
>  			DRM_AUTH),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_G2D_GET_VER, exynos_g2d_get_ver_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_G2D_SET_CMDLIST, exynos_g2d_set_cmdlist_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_G2D_EXEC, exynos_g2d_exec_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_IPP_GET_RESOURCES,
>  			exynos_drm_ipp_get_res_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_IPP_GET_CAPS, exynos_drm_ipp_get_caps_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_IPP_GET_LIMITS,
>  			exynos_drm_ipp_get_limits_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  	DRM_IOCTL_DEF_DRV(EXYNOS_IPP_COMMIT, exynos_drm_ipp_commit_ioctl,
> -			DRM_AUTH | DRM_RENDER_ALLOW),
> +			DRM_RENDER_ALLOW),
>  };
>  
>  static const struct file_operations exynos_drm_driver_fops = {
> 


More information about the dri-devel mailing list