mbox series

[v2,0/6] Refactor definitions out of perf.h

Message ID 20230410162511.3055900-1-irogers@google.com (mailing list archive)
Headers show
Series Refactor definitions out of perf.h | expand

Message

Ian Rogers April 10, 2023, 4:25 p.m. UTC
Move definitions and declarations for greater consistency.

The original motivation was, when fuzzing something like parse-events,
having the main function in perf.c alongside global variables like
input_name means that input_name must be redeclared with the fuzzer
function's main. However, as the fuzzer is using the tools/perf code
as a library this causes backward linking reference that the linker
may warn about.

v2. Remove references from commit messages about linking, as Adrian
    points out we could solve that problem with #ifdefs.

Ian Rogers (6):
  perf ui: Move window resize signal functions
  perf usage: Move usage strings
  perf header: Move perf_version_string declaration
  perf version: Use regular verbose flag
  perf util: Move input_name to util
  perf util: Move perf_guest/host declarations

 tools/perf/builtin-annotate.c     |  2 +-
 tools/perf/builtin-buildid-list.c |  2 +-
 tools/perf/builtin-c2c.c          |  2 +-
 tools/perf/builtin-data.c         |  2 +-
 tools/perf/builtin-diff.c         |  2 +-
 tools/perf/builtin-evlist.c       |  2 +-
 tools/perf/builtin-help.c         |  1 +
 tools/perf/builtin-kmem.c         |  2 +-
 tools/perf/builtin-kvm.c          |  1 +
 tools/perf/builtin-kwork.c        |  2 +-
 tools/perf/builtin-mem.c          |  2 +-
 tools/perf/builtin-sched.c        |  2 +-
 tools/perf/builtin-stat.c         |  2 +-
 tools/perf/builtin-timechart.c    |  2 +-
 tools/perf/builtin-version.c      |  7 +++----
 tools/perf/builtin.h              |  3 ---
 tools/perf/perf.c                 | 27 +--------------------------
 tools/perf/perf.h                 |  9 ---------
 tools/perf/ui/browsers/hists.c    |  2 +-
 tools/perf/ui/hist.c              |  2 +-
 tools/perf/ui/setup.c             | 19 +++++++++++++++++++
 tools/perf/ui/tui/setup.c         |  1 -
 tools/perf/ui/ui.h                |  3 +++
 tools/perf/util/cs-etm.c          |  1 +
 tools/perf/util/event.c           |  2 +-
 tools/perf/util/evlist.c          |  1 +
 tools/perf/util/header.h          |  2 ++
 tools/perf/util/parse-events.c    |  2 +-
 tools/perf/util/session.c         |  2 +-
 tools/perf/util/top.c             |  2 +-
 tools/perf/util/usage.c           |  6 ++++++
 tools/perf/util/util.c            |  2 ++
 tools/perf/util/util.h            |  8 ++++++++
 33 files changed, 66 insertions(+), 61 deletions(-)

Comments

Arnaldo Carvalho de Melo April 10, 2023, 10:22 p.m. UTC | #1
Em Mon, Apr 10, 2023 at 09:25:05AM -0700, Ian Rogers escreveu:
> Move definitions and declarations for greater consistency.
> 
> The original motivation was, when fuzzing something like parse-events,
> having the main function in perf.c alongside global variables like
> input_name means that input_name must be redeclared with the fuzzer
> function's main. However, as the fuzzer is using the tools/perf code
> as a library this causes backward linking reference that the linker
> may warn about.
> 
> v2. Remove references from commit messages about linking, as Adrian
>     points out we could solve that problem with #ifdefs.

Thanks, applied.

- Arnaldo

 
> Ian Rogers (6):
>   perf ui: Move window resize signal functions
>   perf usage: Move usage strings
>   perf header: Move perf_version_string declaration
>   perf version: Use regular verbose flag
>   perf util: Move input_name to util
>   perf util: Move perf_guest/host declarations
> 
>  tools/perf/builtin-annotate.c     |  2 +-
>  tools/perf/builtin-buildid-list.c |  2 +-
>  tools/perf/builtin-c2c.c          |  2 +-
>  tools/perf/builtin-data.c         |  2 +-
>  tools/perf/builtin-diff.c         |  2 +-
>  tools/perf/builtin-evlist.c       |  2 +-
>  tools/perf/builtin-help.c         |  1 +
>  tools/perf/builtin-kmem.c         |  2 +-
>  tools/perf/builtin-kvm.c          |  1 +
>  tools/perf/builtin-kwork.c        |  2 +-
>  tools/perf/builtin-mem.c          |  2 +-
>  tools/perf/builtin-sched.c        |  2 +-
>  tools/perf/builtin-stat.c         |  2 +-
>  tools/perf/builtin-timechart.c    |  2 +-
>  tools/perf/builtin-version.c      |  7 +++----
>  tools/perf/builtin.h              |  3 ---
>  tools/perf/perf.c                 | 27 +--------------------------
>  tools/perf/perf.h                 |  9 ---------
>  tools/perf/ui/browsers/hists.c    |  2 +-
>  tools/perf/ui/hist.c              |  2 +-
>  tools/perf/ui/setup.c             | 19 +++++++++++++++++++
>  tools/perf/ui/tui/setup.c         |  1 -
>  tools/perf/ui/ui.h                |  3 +++
>  tools/perf/util/cs-etm.c          |  1 +
>  tools/perf/util/event.c           |  2 +-
>  tools/perf/util/evlist.c          |  1 +
>  tools/perf/util/header.h          |  2 ++
>  tools/perf/util/parse-events.c    |  2 +-
>  tools/perf/util/session.c         |  2 +-
>  tools/perf/util/top.c             |  2 +-
>  tools/perf/util/usage.c           |  6 ++++++
>  tools/perf/util/util.c            |  2 ++
>  tools/perf/util/util.h            |  8 ++++++++
>  33 files changed, 66 insertions(+), 61 deletions(-)
> 
> -- 
> 2.40.0.577.gac1e443424-goog
>