Re: [PATCH v2 11/13] perf header: change FEAT_OP* macros
From: David Carrillo-Cisneros
Date: Sun Jun 04 2017 - 22:13:16 EST
On Thu, May 25, 2017 at 1:08 AM, Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
> On Tue, May 23, 2017 at 12:48:51AM -0700, David Carrillo-Cisneros wrote:
>> There are three FEAT_OP* macros:
>> - FEAT_OPA: for features without process record.
>> - FEAT_OPP: for features with process record.
>> - FEAT_OPF: like FEAT_OPP but to show only if show_full_info flags
>> is set.
>>
>> To add pipe-mode headers we need to specify whether a feature generates a
>> corresponding sample record. This is an extra variation to the existing
>
> nit, the sample word here is confusing, it's an aux event
Will change.
>
>> macros. To simplify, redefine macros instead so that:
>> - show_full_info is specified as an argument (to remove the
>> FEAT_OPF variation) and,
>> - it always sets "process" handler (to remove the FEAT_OPA variation).
>> Individual process handlers can be NULLed individually.
>>
>> This allows to define two variations only:
>> - FEAT_OPR: has sample record.
>> - FEAT_OPN: doesn't has sample record.
>>
>> Signed-off-by: David Carrillo-Cisneros <davidcc@xxxxxxxxxx>
>> ---
>> tools/perf/util/header.c | 72 +++++++++++++++++++++++++++++-------------------
>> 1 file changed, 44 insertions(+), 28 deletions(-)
>>
>> diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
>> index b7704b30ed52..7aa84a02b9bd 100644
>> --- a/tools/perf/util/header.c
>> +++ b/tools/perf/util/header.c
>> @@ -11,6 +11,7 @@
>> #include <linux/list.h>
>> #include <linux/kernel.h>
>> #include <linux/bitops.h>
>> +#include <linux/stringify.h>
>> #include <sys/stat.h>
>> #include <sys/types.h>
>> #include <sys/utsname.h>
>> @@ -2106,42 +2107,57 @@ struct feature_ops {
>> int (*process)(struct feat_fd *fd, void *data);
>> const char *name;
>> bool full_only;
>> + bool has_record;
>
> 'synthesize' might be better choice
Yeah, it's better. Will change.
>
> jirka