diff mbox series

[libdrm] xf86drm: test for render nodes before primary nodes

Message ID 20190512165049.5780-1-jsg@jsg.id.au (mailing list archive)
State New, archived
Headers show
Series [libdrm] xf86drm: test for render nodes before primary nodes | expand

Commit Message

Jonathan Gray May 12, 2019, 4:50 p.m. UTC
Unlike Linux the OpenBSD primary "drm" device name is substring of the
"drmR" render node device name and strncmp() tests resulted in render
nodes being flagged as primary nodes.

Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
---
 xf86drm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Eric Engestrom July 3, 2019, 11:39 a.m. UTC | #1
On Monday, 2019-05-13 02:50:49 +1000, Jonathan Gray wrote:
> Unlike Linux the OpenBSD primary "drm" device name is substring of the
> "drmR" render node device name and strncmp() tests resulted in render
> nodes being flagged as primary nodes.
> 
> Signed-off-by: Jonathan Gray <jsg@jsg.id.au>

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
and pushed!
Sorry it got forgotten for so long.

> ---
>  xf86drm.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/xf86drm.c b/xf86drm.c
> index 2858d826..42022cac 100644
> --- a/xf86drm.c
> +++ b/xf86drm.c
> @@ -3168,10 +3168,6 @@ drm_public int drmDevicesEqual(drmDevicePtr a, drmDevicePtr b)
>  
>  static int drmGetNodeType(const char *name)
>  {
> -    if (strncmp(name, DRM_PRIMARY_MINOR_NAME,
> -        sizeof(DRM_PRIMARY_MINOR_NAME) - 1) == 0)
> -        return DRM_NODE_PRIMARY;
> -
>      if (strncmp(name, DRM_CONTROL_MINOR_NAME,
>          sizeof(DRM_CONTROL_MINOR_NAME ) - 1) == 0)
>          return DRM_NODE_CONTROL;
> @@ -3180,6 +3176,10 @@ static int drmGetNodeType(const char *name)
>          sizeof(DRM_RENDER_MINOR_NAME) - 1) == 0)
>          return DRM_NODE_RENDER;
>  
> +    if (strncmp(name, DRM_PRIMARY_MINOR_NAME,
> +        sizeof(DRM_PRIMARY_MINOR_NAME) - 1) == 0)
> +        return DRM_NODE_PRIMARY;
> +
>      return -EINVAL;
>  }
>  
> -- 
> 2.21.0
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox series

Patch

diff --git a/xf86drm.c b/xf86drm.c
index 2858d826..42022cac 100644
--- a/xf86drm.c
+++ b/xf86drm.c
@@ -3168,10 +3168,6 @@  drm_public int drmDevicesEqual(drmDevicePtr a, drmDevicePtr b)
 
 static int drmGetNodeType(const char *name)
 {
-    if (strncmp(name, DRM_PRIMARY_MINOR_NAME,
-        sizeof(DRM_PRIMARY_MINOR_NAME) - 1) == 0)
-        return DRM_NODE_PRIMARY;
-
     if (strncmp(name, DRM_CONTROL_MINOR_NAME,
         sizeof(DRM_CONTROL_MINOR_NAME ) - 1) == 0)
         return DRM_NODE_CONTROL;
@@ -3180,6 +3176,10 @@  static int drmGetNodeType(const char *name)
         sizeof(DRM_RENDER_MINOR_NAME) - 1) == 0)
         return DRM_NODE_RENDER;
 
+    if (strncmp(name, DRM_PRIMARY_MINOR_NAME,
+        sizeof(DRM_PRIMARY_MINOR_NAME) - 1) == 0)
+        return DRM_NODE_PRIMARY;
+
     return -EINVAL;
 }