Messages in this thread | | | Date | Thu, 16 Dec 2021 09:07:50 +0100 | Subject | Re: [PATCH v3 4/4] libtraceevent: Increase libtraceevent logging when verbose | From | Jiri Slaby <> |
| |
Hi,
On 23. 09. 21, 2:10, Ian Rogers wrote: > libtraceevent has added more levels of debug printout and with changes > like: > https://lore.kernel.org/linux-trace-devel/20210507095022.1079364-3-tz.stoyanov@gmail.com > previously generated output like "registering plugin" is no longer > displayed. This change makes it so that if perf's verbose debug output > is enabled then the debug and info libtraceevent messages can be > displayed. > The code is conditionally enabled based on the libtraceevent version as > discussed in the RFC: > https://lore.kernel.org/lkml/20210610060643.595673-1-irogers@google.com/ > > v2. Is a rebase and handles the case of building without > LIBTRACEEVENT_DYNAMIC.
It breaks build with LIBTRACEEVENT_DYNAMIC and version 1.3.0: > util/debug.c: In function ‘perf_debug_option’: > util/debug.c:243:17: error: implicit declaration of function ‘tep_set_loglevel’ [-Werror=implicit-function-declaration] > 243 | tep_set_loglevel(TEP_LOG_INFO); > | ^~~~~~~~~~~~~~~~ > util/debug.c:243:34: error: ‘TEP_LOG_INFO’ undeclared (first use in this function); did you mean ‘TEP_PRINT_INFO’? > 243 | tep_set_loglevel(TEP_LOG_INFO); > | ^~~~~~~~~~~~ > | TEP_PRINT_INFO > util/debug.c:243:34: note: each undeclared identifier is reported only once for each function it appears in > util/debug.c:245:34: error: ‘TEP_LOG_DEBUG’ undeclared (first use in this function) > 245 | tep_set_loglevel(TEP_LOG_DEBUG); > | ^~~~~~~~~~~~~ > util/debug.c:247:34: error: ‘TEP_LOG_ALL’ undeclared (first use in this function) > 247 | tep_set_loglevel(TEP_LOG_ALL); > | ^~~~~~~~~~~
It is because the gcc's command line looks like: gcc ... -I/home/abuild/rpmbuild/BUILD/tools/lib/ ... -DLIBTRACEEVENT_VERSION=65790 ...
So:
> --- a/tools/perf/util/debug.c > +++ b/tools/perf/util/debug.c > @@ -24,6 +24,16 @@ > #include "util/parse-sublevel-options.h" > > #include <linux/ctype.h> > +#include <traceevent/event-parse.h>
/home/abuild/rpmbuild/BUILD/tools/lib/traceevent/event-parse.h is taken here.
> @@ -228,6 +238,15 @@ int perf_debug_option(const char *str) > /* Allow only verbose value in range (0, 10), otherwise set 0. */ > verbose = (verbose < 0) || (verbose > 10) ? 0 : verbose; > > +#if MAKE_LIBTRACEEVENT_VERSION(1, 3, 0) <= LIBTRACEEVENT_VERSION
But -DLIBTRACEEVENT_VERSION=65790 is taken here (which is 1.3.0).
> + if (verbose == 1) > + tep_set_loglevel(TEP_LOG_INFO); > + else if (verbose == 2) > + tep_set_loglevel(TEP_LOG_DEBUG); > + else if (verbose >= 3) > + tep_set_loglevel(TEP_LOG_ALL); > +#endif > + > return 0; > } >
regards, -- js suse labs
| |