numam-spdk/lib/trace
Konrad Sztyber f301d156f1 lib/trace: variable number of tracepoint arguments
This patch allows tracepoint to record a variable number of arugments.
An additional function has been added,
`spdk_trace_register_description_ext()`, which allows the user to
register definitions for tracepoints specifying all the arugments that
they accept.  Users can also call `spdk_trace_register_description()` to
register tpoints with a single argument (or none).

Currently, all of the tracepoint arguments need to be passed as
uint64_t.

The trace record functions use variable arguments and rely on tracepoint
description to know the order and the format of the arguments passed.
That means that the user needs to take care that they're always in sync.

Moreover, this patch extends the tracepoint entry size from 32B to 64B,
meaning that there are 40B that can be utilized for passing arguments,
which in turn means that there can be up to 5 arguments per tracepoint.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: I9993eabb2663078052439320e6d2f6ae607a47ff
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7956
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Community-CI: Mellanox Build Bot
2021-06-28 16:17:35 +00:00
..
Makefile lib/trace: variable number of tracepoint arguments 2021-06-28 16:17:35 +00:00
spdk_trace.map lib/trace: variable number of tracepoint arguments 2021-06-28 16:17:35 +00:00
trace_flags.c lib/trace: variable number of tracepoint arguments 2021-06-28 16:17:35 +00:00
trace_rpc.c lib: Use PRId64 for portability 2020-11-20 11:01:37 +00:00
trace.c lib/trace: variable number of tracepoint arguments 2021-06-28 16:17:35 +00:00