STRUCT AUXTRACE_RECORD(9)
π struct auxtrace_record(9) β a.k.a. the AUX area recording callback squad
okay bestie, this one's from the Kernel API Manual, and it's lowkey iconic: it's the struct auxtrace_record β literally the bundle of callbacks that make recording AUX area data possible π
β¨ NAME β¨
struct auxtrace_record β callbacks for recording AUX area data.
π¦ SYNOPSIS π¦
struct auxtrace_record {
int (*recording_options)(struct auxtrace_record *itr, struct evlist
*evlist, struct record_opts *opts);
size_t (*info_priv_size)(struct auxtrace_record *itr, struct evlist
*evlist);
int (*info_fill)(struct auxtrace_record *itr, struct perf_session
*session, struct perf_record_auxtrace_info *auxtrace_info, size_t
priv_size);
void (*free)(struct auxtrace_record *itr);
int (*snapshot_start)(struct auxtrace_record *itr);
int (*snapshot_finish)(struct auxtrace_record *itr);
int (*find_snapshot)(struct auxtrace_record *itr, int idx, struct
auxtrace_mmap *mm, unsigned char *data, u64 *head, u64 *old);
int (*parse_snapshot_options)(struct auxtrace_record *itr, struct
record_opts *opts, const char *str);
u64 (*reference)(struct auxtrace_record *itr);
int (*read_finish)(struct auxtrace_record *itr, int idx);
unsigned int alignment;
unsigned int default_aux_sample_size;
struct evlist *evlist;
};
π Members π
recording_optionsβ validates and processes the recording options, periodt β¨info_priv_sizeβ returns the size of the private data inauxtrace_info_event, iykykinfo_fillβ fills in that private data inauxtrace_info_eventπfreeβ frees this auxtrace record structure, bye bestie π«Άsnapshot_startβ starting a snapshot πΈsnapshot_finishβ finishing a snapshot πfind_snapshotβ finds the data to snapshot within the auxtrace mmap πparse_snapshot_optionsβ parses the snapshot options βreferenceβ provides a 64-bit reference number forauxtrace_eventπread_finishβ called after reading from an auxtrace mmap, like the little cleanup era πalignmentβ alignment (if any) for AUX area data πdefault_aux_sample_sizeβ the default sample size for the--auxsample option πevlistβ the selected events list π₯
π SEE ALSO π
Kernel file ./tools/perf/util/auxtrace.h, plus the whole friend group:
struct itrace_synth_opts(9)struct auxtrace_index_entry(9)struct auxtrace_index(9)struct auxtrace(9)struct auxtrace_buffer(9)struct auxtrace_queue(9)struct auxtrace_queues(9)struct auxtrace_heap_item(9)struct auxtrace_heap(9)struct auxtrace_mmap(9)struct auxtrace_mmap_params(9)struct addr_filter(9)struct addr_filters(9)
ngl the whole squad is here β read the kernel header ./tools/perf/util/auxtrace.h if you wanna go deeper π§
that's the whole page, bestie β slay, go record some AUX area data β¨
π sign-off time: this absolute banger lives at ./tools/perf/util, dated October 2026, and it's struct auxtrace_record(9) in the section 9 lineup π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms