perf probe: Fix to show correct error string
authorMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Tue, 4 Oct 2011 10:45:04 +0000 (19:45 +0900)
committerSteven Rostedt <rostedt@goodmis.org>
Mon, 10 Oct 2011 19:13:23 +0000 (15:13 -0400)
Fix perf probe to show correct error string when it
fails to delete an event. The write(2) returns -1
if failed, and errno stores real error number.

Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: stable@kernel.org
Link: http://lkml.kernel.org/r/20111004104504.14591.41266.stgit@fedora15
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
tools/perf/util/probe-event.c

index 1c7bfa5fe0a81052fa1718cf996ef80c21d2e96e..eb25900e2211f936ee4caea544fd7a70c6df43e8 100644 (file)
@@ -1956,8 +1956,10 @@ static int __del_trace_probe_event(int fd, struct str_node *ent)
 
        pr_debug("Writing event: %s\n", buf);
        ret = write(fd, buf, strlen(buf));
-       if (ret < 0)
+       if (ret < 0) {
+               ret = -errno;
                goto error;
+       }
 
        printf("Remove event: %s\n", ent->s);
        return 0;