[PATCH 1/3] drm/exynos: correct dma_buf exporter permission as ReadWrite

InKi Dae daeinki at gmail.com
Fri Jul 20 05:27:15 PDT 2012


2012/7/10, Cooper Yuan <cooperyuan at gmail.com>:
> Set dma_buf exporter permission as ReadWrite, otherwise mmap will get
> errno 13: permission denied.
>
> Signed-off-by: Cooper Yuan <cooperyuan at gmail.com>
> ---
>  drivers/gpu/drm/exynos/exynos_drm_dmabuf.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> b/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> index 613bf8a..e4eeb0b 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dmabuf.c
> @@ -29,6 +29,7 @@
>  #include "exynos_drm_drv.h"
>  #include "exynos_drm_gem.h"
>
> +#include <linux/fcntl.h>
>  #include <linux/dma-buf.h>
>
>  static struct sg_table *exynos_pages_to_sg(struct page **pages, int
> nr_pages,
> @@ -179,7 +180,7 @@ struct dma_buf *exynos_dmabuf_prime_export(struct
> drm_device *drm_dev,
>  	struct exynos_drm_gem_obj *exynos_gem_obj = to_exynos_gem_obj(obj);
>
>  	return dma_buf_export(exynos_gem_obj, &exynos_dmabuf_ops,
> -				exynos_gem_obj->base.size, 0600);
> +				exynos_gem_obj->base.size, O_RDWR);

this way is not good. the permission should be set from user so use
flags variable.

>  }
>
>  struct drm_gem_object *exynos_dmabuf_prime_import(struct drm_device
> *drm_dev,
> --


> 1.7.0.4
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>


More information about the dri-devel mailing list