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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 10 May 2016 14:46:49 +0900
From:	Masami Hiramatsu <mhiramat@...nel.org>
To:	Arnaldo Carvalho de Melo <acme@...nel.org>
Cc:	Masami Hiramatsu <mhiramat@...nel.org>,
	linux-kernel@...r.kernel.org, Namhyung Kim <namhyung@...nel.org>,
	Peter Zijlstra <peterz@...radead.org>,
	Ingo Molnar <mingo@...hat.com>
Subject: [PATCH perf/core v3 0/8] perf tools: Update strbuf to remove xrealloc

Hi Arnaldo, 

Here is the 3rd version of the strbuf update. I've fixed it
according to your suggestion :)

 - [1/8] Use realloc instead of malloc/memcpy/free (Thanks Arnaldo!)
 - [2/8] Cleanup code path according to Arnaldo's review.
 - [5/8] Avoid using STRBUF_INIT and return error directly before
        initalizing strbuf.

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.

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        |   52 ++++++-------
 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      |  143 ++++++++++++++++++++++--------------
 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, 293 insertions(+), 240 deletions(-)
 delete mode 100644 tools/perf/util/wrapper.c

--
Masami Hiramatsu

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ