update_ftrace_direct_del(9)
π update_ftrace_direct_del(9) β the Kernel API Manual tea ββ¨
okay bestie, buckle up, we're in the Kernel API Manual today and this one is genuinely a little baddie π
β¨ NAME β¨
update_ftrace_direct_del β updates @ops by removing its direct callers provided in @hash π§
πΈ SYNOPSIS πΈ
int update_ftrace_direct_del (struct ftrace_ops *ops , struct ftrace_hash *hash );
π¦ ARGUMENTS π¦
opsβ the address of thestruct ftrace_opsobject πhashβ the address of thestruct ftrace_hashobject π
π₯ DESCRIPTION π₯
so what this one does is delete custom direct callers (that's ip -> addr, iykyk) over in ops, and it takes them from the ones you specified via hash. that's the whole vibe. π
after it does its thing, the ops will be either unregistered updated. yes that's exactly what the manual says, no I'm not gonna editorialize, that's the sentence, we're moving on π«Ά
β RETURN β
- zero on success β that's the slay β¨
- Non zero on error π β which includes:
-EINVALβ the hash is empty-EINVALβ the ops is not registered
not me getting the same -EINVAL for two completely different problems π check both, bestie.
π SEE ALSO π
Kernel file ./kernel/trace/ftrace.c and literally the entire friend group:
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)free_ftrace_func_mapper(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_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)
bestie this page is brought to you by the source/version ./kernel/trace, dated October 2026 ποΈπ go read it in ftrace.c, it ate, no cap π
update_ftrace_direct_del(9) π periodt β¨
π¦ 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