Em Fri, Apr 29, 2016 at 11:46:32PM +0900, Masami Hiramatsu escreveu: > Hi Arnaldo, > > This patch series does refactoring strbuf and xrealloc related code > to remove xrealloc since it can call die() to exit immediately when > it hits any error. Instead of that, it should return error code to > the caller so that the caller can handle its error. > > Thus, at first, this changes the strbuf APIs to return error code > instead of die() immediately. And then changing API callers according > to the following rules. > - Check the return value of strbuf APIs and handle errors and, > - If the caller returns an error code (errno), it returns > the return value of strbuf APIs. > - If the caller just return -1 or NULl in error case, it also > returns -1 or NULL in case of strbuf error. > - If the caller can call die() directly, it also call die() > in case of strbuf error. > - Error checking patches are splitted for each subcommand, since > it will help review. > > This also removes xrealloc and ALLOC_GROW from libperf, so that no > one use it anymore. > > This series actually depends on the series of SDT support patches > which I've sent an hour ago. It is also able to change this not to > depend on it easily. Please ask me if you'd like so.
Please do so, as this one looks easier to review, so can go in faster. - Arnaldo > Thank you, > > --- > > Masami Hiramatsu (8): > perf: Rewrite strbuf not to die > perf probe: Check the return value of strbuf APIs > perf help: Make check_emacsclient_version to check strbuf APIs > perf: Make alias handler to check return value of strbuf > perf header: Make topology checkers to check return value of strbuf > perf pmu: Make pmu_formats_string to check return value of strbuf > perf help: Do not use ALLOC_GROW in add_cmd_list > perf tools: Remove xrealloc and ALLOC_GROW > > > tools/perf/builtin-help.c | 18 ++-- > tools/perf/perf.c | 8 +- > tools/perf/util/Build | 1 > tools/perf/util/cache.h | 19 ---- > tools/perf/util/dwarf-aux.c | 50 +++++------ > tools/perf/util/header.c | 31 ++++--- > tools/perf/util/help-unknown-cmd.c | 30 +++++- > tools/perf/util/pmu.c | 10 +- > tools/perf/util/probe-event.c | 167 > +++++++++++++++++++++--------------- > tools/perf/util/probe-finder.c | 30 ++++-- > tools/perf/util/quote.c | 36 ++++---- > tools/perf/util/quote.h | 2 > tools/perf/util/strbuf.c | 93 ++++++++++++++------ > tools/perf/util/strbuf.h | 25 +++-- > tools/perf/util/util.h | 6 - > tools/perf/util/wrapper.c | 29 ------ > 16 files changed, 302 insertions(+), 253 deletions(-) > delete mode 100644 tools/perf/util/wrapper.c > > -- > Masami Hiramatsu