Mesa (master): aubinator: stop using non portable error() function

Emil Velikov evelikov at kemper.freedesktop.org
Thu Sep 8 17:37:57 UTC 2016


Module: Mesa
Branch: master
Commit: 0ba9e281fc0a97fe170a160e72a029ce92f397bc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ba9e281fc0a97fe170a160e72a029ce92f397bc

Author: Jonathan Gray <jsg at jsg.id.au>
Date:   Fri Sep  2 03:12:24 2016 +1000

aubinator: stop using non portable error() function

error() is a gnu extension and is not present on OpenBSD
and likely other systems.

Convert use of error to fprintf/strerror/exit.

Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>



---

 src/intel/tools/aubinator.c | 46 +++++++++++++++++++++++++++++----------------
 1 file changed, 30 insertions(+), 16 deletions(-)

diff --git a/src/intel/tools/aubinator.c b/src/intel/tools/aubinator.c
index 811f707..66107711 100644
--- a/src/intel/tools/aubinator.c
+++ b/src/intel/tools/aubinator.c
@@ -30,7 +30,6 @@
 #include <string.h>
 #include <signal.h>
 #include <errno.h>
-#include <error.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <sys/wait.h>
@@ -794,8 +793,10 @@ handle_trace_block(struct gen_spec *spec, uint32_t *p)
    case AUB_TRACE_OP_DATA_WRITE:
       if (address_space != AUB_TRACE_MEMTYPE_GTT)
          break;
-      if (gtt_size < offset + size)
-         error(EXIT_FAILURE, errno, "overflow gtt space");
+      if (gtt_size < offset + size) {
+         fprintf(stderr, "overflow gtt space: %s", strerror(errno));
+         exit(EXIT_FAILURE);
+      }
       memcpy((char *) gtt + offset, data, size);
       if (gtt_end < offset + size)
          gtt_end = offset + size;
@@ -834,16 +835,22 @@ aub_file_open(const char *filename)
    file = malloc(sizeof *file);
    file->filename = strdup(filename);
    file->fd = open(file->filename, O_RDONLY);
-   if (file->fd == -1)
-      error(EXIT_FAILURE, errno, "open %s failed", file->filename);
+   if (file->fd == -1) {
+      fprintf(stderr, "open %s failed: %s", file->filename, strerror(errno));
+      exit(EXIT_FAILURE);
+   }
 
-   if (fstat(file->fd, &file->sb) == -1)
-      error(EXIT_FAILURE, errno, "stat failed");
+   if (fstat(file->fd, &file->sb) == -1) {
+      fprintf(stderr, "stat failed: %s", strerror(errno));
+      exit(EXIT_FAILURE);
+   }
 
    file->map = mmap(NULL, file->sb.st_size,
                     PROT_READ, MAP_SHARED, file->fd, 0);
-   if (file->map == MAP_FAILED)
-      error(EXIT_FAILURE, errno, "mmap failed");
+   if (file->map == MAP_FAILED) {
+      fprintf(stderr, "mmap failed: %s", strerror(errno));
+      exit(EXIT_FAILURE);
+   }
 
    file->cursor = file->map;
    file->end = file->map + file->sb.st_size / 4;
@@ -852,8 +859,10 @@ aub_file_open(const char *filename)
    gtt_size = 1ul << 40;
    gtt = mmap(NULL, gtt_size, PROT_READ | PROT_WRITE,
               MAP_PRIVATE | MAP_ANONYMOUS |  MAP_NORESERVE, -1, 0);
-   if (gtt == MAP_FAILED)
-      error(EXIT_FAILURE, errno, "failed to alloc gtt space");
+   if (gtt == MAP_FAILED) {
+      fprintf(stderr, "failed to alloc gtt space: %s", strerror(errno));
+      exit(1);
+   }
 
    return file;
 }
@@ -1056,8 +1065,10 @@ int main(int argc, char *argv[])
       } else if (strcmp(argv[i], "--no-offsets") == 0) {
          option_print_offsets = false;
       } else if (is_prefix(argv[i], "--gen", &value)) {
-         if (value == NULL)
-            error(EXIT_FAILURE, 0, "option '--gen' requires an argument\n");
+         if (value == NULL) {
+            fprintf(stderr, "option '--gen' requires an argument\n");
+            exit(EXIT_FAILURE);
+         }
          found_arg_gen = true;
          gen_major = 0;
          gen_minor = 0;
@@ -1071,8 +1082,10 @@ int main(int argc, char *argv[])
             option_color = COLOR_NEVER;
          else if (strcmp(value, "auto") == 0)
             option_color = COLOR_AUTO;
-         else
-            error(EXIT_FAILURE, 0, "invalid value for --color: %s", value);
+         else {
+            fprintf(stderr, "invalid value for --color: %s", value);
+            exit(EXIT_FAILURE);
+         }
       } else if (strcmp(argv[i], "--help") == 0) {
          print_help(stdout);
          exit(EXIT_SUCCESS);
@@ -1131,8 +1144,9 @@ int main(int argc, char *argv[])
       gen_major = 9;
       gen_minor = 0;
    } else {
-      error(EXIT_FAILURE, 0, "can't parse gen: %s, expected ivb, byt, hsw, "
+      fprintf(stderr, "can't parse gen: %s, expected ivb, byt, hsw, "
                              "bdw, chv, skl, kbl or bxt\n", gen_val);
+      exit(EXIT_FAILURE);
    }
 
    /* Do this before we redirect stdout to pager. */




More information about the mesa-commit mailing list