[PATCH libdrm 1/9] tests/dristat: don't include C files

Jan Vesely jan.vesely at rutgers.edu
Mon Mar 23 15:10:26 PDT 2015


On Sun, 2015-03-22 at 22:03 +0000, Emil Velikov wrote:
> Remove the hack of including C files, by reworking the only requirement
> drmOpenMinor() to an open(buf...). After all we do know the exact name
> of the device we're going to open, so might as well use it. Replace
> hard-coded 16 with DRM_MAX_MINOR while we're here.
> 
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>  tests/dristat.c | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/tests/dristat.c b/tests/dristat.c
> index cca4b03..cc23e16 100644
> --- a/tests/dristat.c
> +++ b/tests/dristat.c
> @@ -31,13 +31,14 @@
>  # include <config.h>
>  #endif
>  
> +#include <ctype.h>
> +#include <fcntl.h>
>  #include <stdio.h>
>  #include <stdlib.h>
> +#include <string.h>
> +#include <sys/stat.h>
>  #include <unistd.h>
>  #include "xf86drm.h"
> -#include "xf86drmRandom.c"
> -#include "xf86drmHash.c"
> -#include "xf86drm.c"
>  
>  #define DRM_VERSION 0x00000001
>  #define DRM_MEMORY  0x00000002
> @@ -267,9 +268,9 @@ int main(int argc, char **argv)
>  	    return 1;
>  	}
>  
> -    for (i = 0; i < 16; i++) if (!minor || i == minor) {
> +    for (i = 0; i < DRM_MAX_MINOR; i++) if (!minor || i == minor) {
>  	sprintf(buf, DRM_DEV_NAME, DRM_DIR_NAME, i);
> -	fd = drmOpenMinor(i, 1, DRM_NODE_PRIMARY);
> +	fd = open(buf, O_RDWR, 0);

What about the "create" (second) argument? The original code creates the
node if it does not exist (on non-UDEV systems), or waits some time for
udev to create it.
Not sure how this is relevant for the test.


>  	if (fd >= 0) {
>  	    printf("%s\n", buf);
>  	    if (mask & DRM_BUSID)   getbusid(fd);

-- 
Jan Vesely <jan.vesely at rutgers.edu>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/dri-devel/attachments/20150323/aecd6028/attachment.sig>


More information about the dri-devel mailing list