STRUCT PERF_ADDR_FILTERS_HEAD(9)
β¨ struct perf_addr_filters_head(9) β¨
okay so bestie, welcome to the Kernel API Manual π this one's the struct perf_addr_filters_head page and it's literally the container for address range filters. iykyk.
πΈ NAME πΈ
struct perf_addr_filters_head β the container for address range filters π
π¦ SYNOPSIS π¦
struct perf_addr_filters_head {
struct list_head list;
raw_spinlock_t lock;
unsigned int nr_file_filters;
};
π Members π
listβ the list of filters for this event, periodt. πlockβ a spinlock that serializes accesses to the list and to the event's filter generations (and its children's filter generations too, not just its own, okurrr π«Ά).nr_file_filtersβ the number of file-based filters, that's it, that's the whole vibe πΈ
π Description π
so here's the tea β β a child event will use its parent's list (and therefore the parent's lock too), which is exactly why they're bundled together like this. see perf_event_addr_filters for the full picture, bestie β¨
π SEE ALSO π
- Kernel file
./include/linux/perf_event.h struct hw_perf_event(9)struct pmu(9)struct perf_addr_filter(9)struct perf_event(9)struct perf_event_context(9)struct perf_ctx_data(9)
ngl this struct is small but it's carrying the whole filter-generation situation on its back π respect the lock, fr fr.
okay that's the page!! mwah π this came from ./include/linux, October 2026 β go off, bestie, you ate πβ¨π¦
π¦ 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