In fact the "sample parsing" test does not automatically check new
sample type bits - they must be added to the comparison logic.
Doing that shows that the test fails because the functions
perf_event__synthesize_sample() and perf_event__sample_event_size() have
not been updated with PERF_SAMPLE_TRANSACTION either.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1383313899-15987-10-git-send-email-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
        if (type & PERF_SAMPLE_DATA_SRC)
                COMP(data_src);
 
+       if (type & PERF_SAMPLE_TRANSACTION)
+               COMP(transaction);
+
        return true;
 }
 
                .cpu            = 110,
                .raw_size       = sizeof(raw_data),
                .data_src       = 111,
+               .transaction    = 112,
                .raw_data       = (void *)raw_data,
                .callchain      = &callchain.callchain,
                .branch_stack   = &branch_stack.branch_stack,
 
        /*
         * Fail the test if it has not been updated when new sample format bits
-        * were added.
+        * were added.  Please actually update the test rather than just change
+        * the condition below.
         */
        if (PERF_SAMPLE_MAX > PERF_SAMPLE_TRANSACTION << 1) {
                pr_debug("sample format has changed, some new PERF_SAMPLE_ bit was introduced - test needs updating\n");