perf tools: Get rid of die() calls in trace-data-read.c
authorNamhyung Kim <namhyung.kim@lge.com>
Thu, 21 Mar 2013 07:18:51 +0000 (16:18 +0900)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 21 Mar 2013 16:37:13 +0000 (13:37 -0300)
Convert them to pr_debug() and propagate error code.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1363850332-25297-9-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/trace-event-read.c

index 877706bd454f5256c2c2074e27f9ac31483f34a9..644ad3b4edec0e65155e2ab40012301ff3b1eb39 100644 (file)
@@ -130,17 +130,23 @@ static char *read_string(void)
 
        for (;;) {
                r = read(input_fd, &c, 1);
-               if (r < 0)
-                       die("reading input file");
+               if (r < 0) {
+                       pr_debug("reading input file");
+                       goto out;
+               }
 
-               if (!r)
-                       die("no data");
+               if (!r) {
+                       pr_debug("no data");
+                       goto out;
+               }
 
                if (repipe) {
                        int retw = write(STDOUT_FILENO, &c, 1);
 
-                       if (retw <= 0 || retw != r)
-                               die("repiping input file string");
+                       if (retw <= 0 || retw != r) {
+                               pr_debug("repiping input file string");
+                               goto out;
+                       }
                }
 
                buf[size++] = c;
@@ -155,7 +161,7 @@ static char *read_string(void)
        str = malloc(size);
        if (str)
                memcpy(str, buf, size);
-
+out:
        return str;
 }
 
@@ -219,8 +225,10 @@ static int read_header_files(struct pevent *pevent)
        if (do_read(buf, 12) < 0)
                return -1;
 
-       if (memcmp(buf, "header_page", 12) != 0)
-               die("did not read header page");
+       if (memcmp(buf, "header_page", 12) != 0) {
+               pr_debug("did not read header page");
+               return -1;
+       }
 
        size = read8(pevent);
        skip(size);
@@ -234,8 +242,10 @@ static int read_header_files(struct pevent *pevent)
        if (do_read(buf, 13) < 0)
                return -1;
 
-       if (memcmp(buf, "header_event", 13) != 0)
-               die("did not read header event");
+       if (memcmp(buf, "header_event", 13) != 0) {
+               pr_debug("did not read header event");
+               return -1;
+       }
 
        size = read8(pevent);
        header_event = malloc(size);
@@ -353,13 +363,17 @@ ssize_t trace_report(int fd, struct pevent **ppevent, bool __repipe)
 
        if (do_read(buf, 3) < 0)
                return -1;
-       if (memcmp(buf, test, 3) != 0)
-               die("no trace data in the file");
+       if (memcmp(buf, test, 3) != 0) {
+               pr_debug("no trace data in the file");
+               return -1;
+       }
 
        if (do_read(buf, 7) < 0)
                return -1;
-       if (memcmp(buf, "tracing", 7) != 0)
-               die("not a trace file (missing 'tracing' tag)");
+       if (memcmp(buf, "tracing", 7) != 0) {
+               pr_debug("not a trace file (missing 'tracing' tag)");
+               return -1;
+       }
 
        version = read_string();
        if (version == NULL)