lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <20140814022228.3545.90481.stgit@kbuild-fedora.novalocal> Date: Thu, 14 Aug 2014 02:22:28 +0000 From: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com> To: Arnaldo Carvalho de Melo <acme@...nel.org> Cc: Naohiro Aota <naota@...sp.net>, Peter Zijlstra <a.p.zijlstra@...llo.nl>, LKML <linux-kernel@...r.kernel.org>, Ingo Molnar <mingo@...hat.com>, Paul Mackerras <paulus@...ba.org>, Namhyung Kim <namhyung@...nel.org> Subject: [PATCH 00/13] perf: Replace strerror with strerror_r for thread-safety Hi, (sorry, ignore the previous series, this is complete one) Here is a series to get rid of thread-unsafe strerror() from perf tools. Of course, there maybe other thread-unsafe functions, so this goes just one step forward. :) This introduces STRERR_BUFSIZE(=128) macro for allocating local buffer, but some strerror_r()s don't use that. If there are already a local buffer on the stack, and if it is bigger than STRERR_BUFSIZE, I chose it for strerror_r()'s buffer. By the way, while doing this cleanup, I've found some confusions on the code. Currently perf has 3 ways to output messages except for standard (f)printf, pr_XXX, ui__XXX and warning/error functions. Is there any differences among those APIs? What is the expected use cases for them? For example, a pure printf is in kvm_live_open_events@...ltin-kvm.c but it seems to be ui__error, because the error output next to it uses that. However, other parts use pr_XXX too. It seems inconsistent. Thank you, --- Masami Hiramatsu (13): perf probe: Don't use strerror if strlist__add failed perf: Use strerror_r instead of strerror perf probe: Make error messages thread-safe perf/util: Replace strerror with strerror_r for thread-safety perf top: Use strerror_r instead of strerror perf trace: Use strerror_r instead of strerror perf record: Use strerror_r instead of strerror perf test: Use strerror_r instead of strerror perf sched: Use strerror_r instead of strerror perf buildid-cache: Use strerror_r instead of strerror perf kvm: Use strerror_r instead of strerror perf help: Use strerror_r instead of strerror perf stat: Use strerror_r instead of strerror tools/perf/builtin-buildid-cache.c | 7 +++--- tools/perf/builtin-help.c | 20 ++++++++++++++--- tools/perf/builtin-kvm.c | 7 ++++-- tools/perf/builtin-probe.c | 5 +++- tools/perf/builtin-record.c | 7 +++--- tools/perf/builtin-sched.c | 4 +++ tools/perf/builtin-stat.c | 2 +- tools/perf/builtin-top.c | 2 +- tools/perf/builtin-trace.c | 6 +++-- tools/perf/perf.c | 10 ++++++--- tools/perf/tests/builtin-test.c | 4 +++ tools/perf/tests/mmap-basic.c | 7 +++--- tools/perf/tests/open-syscall-all-cpus.c | 5 +++- tools/perf/tests/open-syscall-tp-fields.c | 7 ++++-- tools/perf/tests/open-syscall.c | 3 ++- tools/perf/tests/perf-record.c | 13 ++++++++--- tools/perf/tests/rdpmc.c | 6 +++-- tools/perf/tests/sw-clock.c | 6 +++-- tools/perf/tests/task-exit.c | 6 +++-- tools/perf/util/cloexec.c | 6 +++-- tools/perf/util/data.c | 8 +++++-- tools/perf/util/debug.h | 3 +++ tools/perf/util/dso.c | 8 +++++-- tools/perf/util/evlist.c | 2 +- tools/perf/util/evsel.c | 7 ++++-- tools/perf/util/parse-events.c | 5 +++- tools/perf/util/probe-event.c | 34 ++++++++++++++++------------- tools/perf/util/probe-finder.c | 7 ++++-- tools/perf/util/run-command.c | 9 ++++++-- tools/perf/util/util.c | 5 +++- 30 files changed, 150 insertions(+), 71 deletions(-) -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Research Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu.pt@...achi.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists