perf record: Implement COMPRESSED event record and its attributes
Implemented PERF_RECORD_COMPRESSED event, related data types, header feature and functions to write, read and print feature attributes from the trace header section. comp_mmap_len preserves the size of mmaped kernel buffer that was used during collection. comp_mmap_len size is used on loading stage as the size of decomp buffer for decompression of COMPRESSED events content. Committer notes: Fixed up conflict with BPF_PROG_INFO and BTF_BTF header features. Signed-off-by: Alexey Budankov <alexey.budankov@linux.intel.com> Reviewed-by: Jiri Olsa <jolsa@kernel.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/ebbaf031-8dda-3864-ebc6-7922d43ee515@linux.intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:

committed by
Arnaldo Carvalho de Melo

parent
d3c8c08e75
commit
42e1fd80a5
@@ -255,6 +255,7 @@ enum perf_user_event_type { /* above any possible kernel type */
|
||||
PERF_RECORD_EVENT_UPDATE = 78,
|
||||
PERF_RECORD_TIME_CONV = 79,
|
||||
PERF_RECORD_HEADER_FEATURE = 80,
|
||||
PERF_RECORD_COMPRESSED = 81,
|
||||
PERF_RECORD_HEADER_MAX
|
||||
};
|
||||
|
||||
@@ -627,6 +628,11 @@ struct feature_event {
|
||||
char data[];
|
||||
};
|
||||
|
||||
struct compressed_event {
|
||||
struct perf_event_header header;
|
||||
char data[];
|
||||
};
|
||||
|
||||
union perf_event {
|
||||
struct perf_event_header header;
|
||||
struct mmap_event mmap;
|
||||
@@ -660,6 +666,7 @@ union perf_event {
|
||||
struct feature_event feat;
|
||||
struct ksymbol_event ksymbol_event;
|
||||
struct bpf_event bpf_event;
|
||||
struct compressed_event pack;
|
||||
};
|
||||
|
||||
void perf_event__print_totals(void);
|
||||
|
Reference in New Issue
Block a user