perf record: Use strerror_r instead of strerror
authorMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Thu, 14 Aug 2014 02:22:43 +0000 (02:22 +0000)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 15 Aug 2014 16:07:14 +0000 (13:07 -0300)
Use strerror_r instead of strerror in error messages for thread-safety.

Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Naohiro Aota <naota@elisp.net>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/20140814022243.3545.7411.stgit@kbuild-fedora.novalocal
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-record.c

index 4db670d4b8da56421e548cd97668e4ed9d3fbb2d..87e28a4e33ba2919d300e24404859eed0523c700 100644 (file)
@@ -161,7 +161,7 @@ try_again:
 
        if (perf_evlist__apply_filters(evlist)) {
                error("failed to set filter with %d (%s)\n", errno,
-                       strerror(errno));
+                       strerror_r(errno, msg, sizeof(msg)));
                rc = -1;
                goto out;
        }
@@ -175,7 +175,8 @@ try_again:
                               "(current value: %u)\n", opts->mmap_pages);
                        rc = -errno;
                } else {
-                       pr_err("failed to mmap with %d (%s)\n", errno, strerror(errno));
+                       pr_err("failed to mmap with %d (%s)\n", errno,
+                               strerror_r(errno, msg, sizeof(msg)));
                        rc = -errno;
                }
                goto out;
@@ -480,7 +481,7 @@ static int __cmd_record(struct record *rec, int argc, const char **argv)
        }
 
        if (forks && workload_exec_errno) {
-               char msg[512];
+               char msg[STRERR_BUFSIZE];
                const char *emsg = strerror_r(workload_exec_errno, msg, sizeof(msg));
                pr_err("Workload failed: %s\n", emsg);
                err = -1;