Re: [PATCH 7/9] tools/lib/traceevent: traceevent API cleanup

From: Steven Rostedt
Date: Fri Nov 30 2018 - 15:09:49 EST


On Fri, 30 Nov 2018 16:18:56 -0300
Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:

> Em Fri, Nov 30, 2018 at 10:44:10AM -0500, Steven Rostedt escreveu:
> > From: Tzvetomir Stoyanov <tstoyanov@xxxxxxxxxx>
> >
> > In order to make libtraceevent into a proper library, its API
> > should be straightforward. This patch hides few API functions,
> > intended for internal usage only:
> > tep_free_event(), tep_free_format_field(), __tep_data2host2(),
> > __tep_data2host4() and __tep_data2host8().
> > The patch also alignes the libtraceevent summary man page with
> > these API changes.
>
> I applied the previous patches, stopped here as it this one fails with
> the error bellow.
>
> Please resend from this patch onwards.
>
> BTW, this is what I have right now:
>
> [acme@quaco perf]$ git log --oneline - 6
> 9db9efe53c72 (HEAD -> perf/core) tools lib traceevent: Rename tep_free_format() to tep_free_event()
> e58c351e8383 tools lib traceevent, perf tools: Rename 'struct tep_event_format' to 'struct tep_event'
> 4237fd0b60d8 tools lib traceevent: Install trace-seq.h API header file
> bb837f2581dc tools lib traceevent: Added support for pkg-config
> a2c167ad70b6 tools lib traceevent: Implement new API tep_get_ref()
> 51d0337d0198 (acme.korg/perf/core) tools lib traceevent: Add sanity check to is_timestamp_in_us()
>
> - Arnaldo
>
> [acme@quaco perf]$ m
> make: Entering directory '/home/acme/git/perf/tools/perf'
> BUILD: Doing 'make -j8' parallel build
> CC /tmp/build/perf/util/trace-event-read.o
> CC /tmp/build/perf/util/trace-event-scripting.o
> CC /tmp/build/perf/util/trace-event.o
> CC /tmp/build/perf/util/sort.o
> CC /tmp/build/perf/util/hist.o
> INSTALL trace_plugins
> CC /tmp/build/perf/util/cgroup.o
> CC /tmp/build/perf/util/stat.o
> CC /tmp/build/perf/util/stat-shadow.o
> CC /tmp/build/perf/util/stat-display.o
> CC /tmp/build/perf/util/record.o
> util/trace-event-read.c: In function âread4â:
> util/trace-event-read.c:105:9: error: implicit declaration of function â__tep_data2host4â; did you mean âtep_data_flagsâ? [-Werror=implicit-function-declaration]
> return __tep_data2host4(pevent, data);
> ^~~~~~~~~~~~~~~~
> tep_data_flags

This should have been changed with patch 6 in the series.

-- Steve

> util/trace-event-read.c:105:9: error: nested extern declaration of â__tep_data2host4â [-Werror=nested-externs]
> util/trace-event-read.c: In function âread8â:
> util/trace-event-read.c:114:9: error: implicit declaration of function â__tep_data2host8â; did you mean âtep_data_flagsâ? [-Werror=implicit-function-declaration]
> return __tep_data2host8(pevent, data);
> ^~~~~~~~~~~~~~~~
> tep_data_flags
> util/trace-event-read.c:114:9: error: nested extern declaration of â__tep_data2host8â [-Werror=nested-externs]
> cc1: all warnings being treated as errors
> mv: cannot stat '/tmp/build/perf/util/.trace-event-read.o.tmp': No such file or directory
> make[4]: *** [/home/acme/git/perf/tools/build/Makefile.build:96: /tmp/build/perf/util/trace-event-read.o] Error 1
> make[4]: *** Waiting for unfinished jobs....
> make[3]: *** [/home/acme/git/perf/tools/build/Makefile.build:139: util] Error 2
> make[2]: *** [Makefile.perf:658: /tmp/build/perf/libperf-in.o] Error 2
> make[1]: *** [Makefile.perf:215: sub-make] Error 2
> make: *** [Makefile:110: install-bin] Error 2
> make: Leaving directory '/home/acme/git/perf/tools/perf'
>
> Performance counter stats for 'make -k O=/tmp/build/perf -C tools/perf install-bin':
>
> 20,606,463,070 cycles:u
> 24,937,056,161 instructions:u # 1.21 insn per cycle
>
> 2.192507189 seconds time elapsed
>
> 5.571323000 seconds user
> 0.994057000 seconds sys
>
>
> [acme@quaco perf]$