ssam_nfblk_find(9)
π ssam_nfblk_find β a Kernel API Manual moment π
okay so bestie. this is a page from the Kernel API Manual, and it's about exactly one (1) tiny little bool function that answers a very specific question. she's small, she's focused, she's iconic. let's get into it β¨
πΈ NAME πΈ
ssam_nfblk_find β check if a notifier block is registered on the given notifier head. list. (yes, "head. list." β that's literally how the original says it, i don't make the rules π«Ά)
π¦ SYNOPSIS π¦
bool ssam_nfblk_find (struct ssam_nf_head *nh , struct ssam_notifier_block *nb );
like look at her. two args, one bool, zero drama. main character energy fr fr π
β ARGUMENTS β
nhβ the notifier head you're searching on. that's the spot you're digging through, bestie πnbβ the notifier block you're looking for. the one you're tryna find in there π
β οΈ NOTE β οΈ
okay this is the important part, don't skip it π this function must be synchronized by the caller with respect to other insert, find, and/or remove calls β and you do that by holding struct ssam_nf.lock. like, literally, hold the lock. no cap. if you don't, chaos, and not the cute kind π
π holder of struct ssam_nf.lock or gtfo β the concurrency vibes are NOT optional here.
β RETURN β
returns true if the given notifier block is registered on the given notifier head, and false otherwise. that's it. that's the whole personality. π
π SEE ALSO π
and now, the moment you've all been waiting for: the entire extended friend group π this page knows literally everyone, so buckle up bestie π
first up, the kernel file itself:
./drivers/platform/surface/aggregator/controller.c
and then the whole crew, in order, exactly as they appear:
ssh_seq_reset(9),ssh_seq_next(9),ssh_rqid_reset(9),ssh_rqid_next(9)ssam_event_matches_notifier(9),ssam_nfblk_call_chain(9),ssam_nfblk_insert(9),ssam_nfblk_remove(9)ssam_nf_head_init(9),ssam_nf_head_destroy(9)struct ssam_nf_refcount_key(9),struct ssam_nf_refcount_entry(9)ssam_nf_refcount_inc(9),ssam_nf_refcount_dec(9),ssam_nf_refcount_dec_free(9),ssam_nf_refcount_empty(9)ssam_nf_call(9),ssam_nf_init(9),ssam_nf_destroy(9)ssam_event_item_cache_init(9),ssam_event_item_cache_destroy(9),ssam_event_item_free(9),ssam_event_item_alloc(9)ssam_event_queue_push(9),ssam_event_queue_pop(9),ssam_event_queue_is_empty(9)ssam_cplt_get_event_queue(9),ssam_cplt_submit(9),ssam_cplt_submit_event(9),ssam_cplt_flush(9)ssam_event_queue_init(9),ssam_cplt_init(9),ssam_cplt_destroy(9)ssam_controller_device(9),ssam_controller_get(9),ssam_controller_put(9)ssam_controller_statelock(9),ssam_controller_stateunlock(9),ssam_controller_lock(9)ssam_controller_caps_load_from_acpi(9),ssam_controller_caps_load_from_of(9),ssam_controller_caps_load(9)ssam_controller_init(9),ssam_controller_start(9),ssam_controller_shutdown(9),ssam_controller_destroy(9)ssam_controller_suspend(9),ssam_controller_resume(9)ssam_request_write_data(9),ssam_request_sync_alloc(9),ssam_request_sync_free(9),ssam_request_sync_init(9),ssam_request_sync_submit(9)ssam_request_do_sync(9),ssam_request_do_sync_with_buffer(9)struct ssh_notification_params(9)ssam_ssh_event_enable(9),ssam_ssh_event_disable(9),ssam_get_firmware_version(9)ssam_ctrl_notif_display_off(9),ssam_ctrl_notif_display_on(9),ssam_ctrl_notif_d0_exit(9),ssam_ctrl_notif_d0_entry(9)ssam_nf_refcount_enable(9),ssam_nf_refcount_disable_free(9)ssam_notifier_register(9),__ssam_notifier_unregister(9)ssam_controller_event_enable(9),ssam_controller_event_disable(9)ssam_notifier_disable_registered(9),ssam_notifier_restore_registered(9),ssam_notifier_is_empty(9),ssam_notifier_unregister_all(9)ssam_irq_setup(9),ssam_irq_free(9),ssam_irq_arm_for_wakeup(9),ssam_irq_disarm_wakeup(9)
like, the way she name-drops every single one of them and still eats π₯ obsessed.
πΈπ and that's the whole page, bestie! source vibes came straight out of ./drivers/platform/surface/agg..., dated October 2026 β so mark your calendar, she's from the future π
β¨ bye ily π«Άπ
π¦ 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