free_ftrace_func_mapper(9)
πΈ free_ftrace_func_mapper β the manual page (Kernel API Manual, section 9) πΈ
okay bestie, pull up a chair, because today we're talking about the icon, the legend, the function that cleans up after everybody else: free_ftrace_func_mapper(9). yes she's giving janitor energy and yes she ATE π
β¨ NAME β¨
free_ftrace_func_mapper β frees a mapping of ips and data π§Ήπ
π SYNOPSIS π
void free_ftrace_func_mapper (struct ftrace_func_mapper *mapper ,
ftrace_mapper_func free_func );
no cap, that's the whole signature. two things go in, nothing comes out (it's void, she doesn't do returns π«Ά).
π¦ ARGUMENTS π¦
mapperβ the mapper that has the ip maps. yes, this one. the whole reason we're here, the main character πfree_funcβ a function to be called on each data item. optional babe, see below β¨
π DESCRIPTION π
so like, this is used to free the function mapper. that's the vibe. that's the whole job.
the free_func is optional, and you use it if the data needs to be freed as well β like, if your data items are holding onto stuff and you want them to let go too. if your data doesn't need freeing, you can lowkey just pass nothing through and skip the whole thing. iykyk π
π friendly reminder from your girl: free_func being optional does NOT mean the mapper stops needing freeing. the mapper is getting freed either way, bestie. the optional bit is just about your data items π«Ά
π₯ SEE ALSO π₯
literally the entire ftrace friend group, ok, they all show up to the function:
- kernel file
./kernel/trace/ftrace.c(yes, the source file itself is in the see-also list, she's self-referential like that π) ftrace_lookup_ip(9)ftrace_free_filter(9)ftrace_hash_move(9)ftrace_location_range(9)ftrace_location(9)ftrace_text_reserved(9)ftrace_bug(9)ftrace_update_record(9)ftrace_test_record(9)ftrace_get_addr_new(9)ftrace_get_addr_curr(9)ftrace_rec_iter_start(9)ftrace_rec_iter_next(9)ftrace_rec_iter_record(9)ftrace_run_stop_machine(9)arch_ftrace_update_code(9)ftrace_startup_subops(9)ftrace_shutdown_subops(9)ftrace_regex_open(9)allocate_ftrace_func_mapper(9)ftrace_func_mapper_find_ip(9)ftrace_func_mapper_add_ip(9)ftrace_func_mapper_remove_ip(9)register_ftrace_direct(9)unregister_ftrace_direct(9)modify_ftrace_direct_nolock(9)modify_ftrace_direct(9)hash_add(9)update_ftrace_direct_add(9)hash_sub(9)update_ftrace_direct_del(9)update_ftrace_direct_mod(9)ftrace_set_filter_ip(9)ftrace_set_filter_ips(9)ftrace_ops_set_global_filter(9)ftrace_set_filter(9)ftrace_set_notrace(9)ftrace_set_global_filter(9)ftrace_set_global_notrace(9)ftrace_ops_get_func(9)ftrace_kill(9)ftrace_is_dead(9)register_ftrace_function(9)unregister_ftrace_function(9)ftrace_lookup_symbols(9)
fr fr that's the whole roster, go read them all, they're iconic πβ
and that's the page!! this one came straight outta ./kernel/trace, dated October 2026, in the Kernel API Manual (section 9, as always). mwah, go free your mappers responsibly, bestie ππ§πΈ
π¦ 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