mbox series

[v3,0/4] libtraceevent: Handling cpumask event fields

Message ID 20221213165620.1034287-1-vschneid@redhat.com (mailing list archive)
Headers show
Series libtraceevent: Handling cpumask event fields | expand

Message

Valentin Schneider Dec. 13, 2022, 4:56 p.m. UTC
Hi folks,

While discussing around [1], Steve had the idea [2] of creating a "proper" type
for cpumask event fields so that userspace tooling doesn't have to guess whether
an unsigned long [] is meant to be a cpumask or not.

o Patch 1 is a collateral fix found by running the new units tests.
o Patch 2 introduces a small amount of boiler plate to get cpumask fields on the same level 
  as bitmask fields
o Patch 3 adds pretty-print output for cpumasks
o Patch 4 is unit tests for the above

Cheers,
Valentin

Revisions
=========

v2 -> v3
++++++++
o Rebased on top of latest libtraceevent
o Added unit tests (Steven)
o Moved TEP_PRINT_CPUMASK definition to the tail of tep_print_arg_type (Steven)

v1 -> v2
++++++++
o Rebased on top of latest libtraceevent
o Fixed s/__get_cpumask/__get_rel_cpumask/ typo

[1]: http://lore.kernel.org/r/xhsmhilkqfi7z.mognet@vschneid.remote.csb
[2]: http://lore.kernel.org/r/20221014080456.1d32b989@rorschach.local.home

Valentin Schneider (4):
  libtraceevent: Ensure print_field_raw() terminates with '\0'
  libtraceevent: Add boiler-plate code for cpumask types
  libtraceevent: Pretty-print cpumask fields as a cpulist
  libtraceevent: Add unit tests for cpumask processing

 include/traceevent/event-parse.h |   1 +
 src/event-parse.c                | 191 +++++++++++++++++++++++++++++++
 utest/traceevent-utest.c         | 161 ++++++++++++++++++++++++++
 3 files changed, 353 insertions(+)

--
2.31.1