[Mesa-dev] [PATCH 6/7] egl/wayland: use drmGetNodeTypeFromFd helper instead of opencoding it

Boyan Ding boyan.j.ding at gmail.com
Tue Jul 28 08:32:49 PDT 2015


This also helps making my egl/dri3 code easier, so
Acked-by: Boyan Ding <boyan.j.ding at gmail.com>


2015-07-11 1:49 GMT+08:00 Emil Velikov <emil.l.velikov at gmail.com>:
> Cc: Axel Davy <axel.davy at ens.fr>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>  configure.ac                            |  2 +-
>  src/egl/drivers/dri2/platform_wayland.c | 20 ++------------------
>  2 files changed, 3 insertions(+), 19 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index e648a8d..e6efa01 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -66,7 +66,7 @@ OSMESA_VERSION=8
>  AC_SUBST([OSMESA_VERSION])
>
>  dnl Versions for external dependencies
> -LIBDRM_REQUIRED=2.4.38
> +LIBDRM_REQUIRED=2.4.60
>  LIBDRM_RADEON_REQUIRED=2.4.56
>  LIBDRM_INTEL_REQUIRED=2.4.61
>  LIBDRM_NVVIEUX_REQUIRED=2.4.33
> diff --git a/src/egl/drivers/dri2/platform_wayland.c b/src/egl/drivers/dri2/platform_wayland.c
> index 0b1adf8..9005eb7 100644
> --- a/src/egl/drivers/dri2/platform_wayland.c
> +++ b/src/egl/drivers/dri2/platform_wayland.c
> @@ -842,22 +842,6 @@ bad_format:
>     return NULL;
>  }
>
> -static char
> -is_fd_render_node(int fd)
> -{
> -   struct stat render;
> -
> -   if (fstat(fd, &render))
> -      return 0;
> -
> -   if (!S_ISCHR(render.st_mode))
> -      return 0;
> -
> -   if (render.st_rdev & 0x80)
> -      return 1;
> -   return 0;
> -}
> -
>  static int
>  dri2_wl_authenticate(_EGLDisplay *disp, uint32_t id)
>  {
> @@ -901,7 +885,7 @@ drm_handle_device(void *data, struct wl_drm *drm, const char *device)
>        return;
>     }
>
> -   if (is_fd_render_node(dri2_dpy->fd)) {
> +   if (drmGetNodeTypeFromFd(dri2_dpy->fd) == DRM_NODE_RENDER) {
>        dri2_dpy->authenticated = 1;
>     } else {
>        drmGetMagic(dri2_dpy->fd, &magic);
> @@ -1111,7 +1095,7 @@ dri2_initialize_wayland_drm(_EGLDriver *drv, _EGLDisplay *disp)
>      * will return a render-node when the requested gpu is different
>      * to the server, but also if the client asks for the same gpu than
>      * the server by requesting its pci-id */
> -   dri2_dpy->is_render_node = is_fd_render_node(dri2_dpy->fd);
> +   dri2_dpy->is_render_node = drmGetNodeTypeFromFd(dri2_dpy->fd) == DRM_NODE_RENDER;
>
>     dri2_dpy->driver_name = loader_get_driver_for_fd(dri2_dpy->fd, 0);
>     if (dri2_dpy->driver_name == NULL) {
> --
> 2.4.5
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list