hsi_put_controller(9)
π hsi_put_controller(9) β like, the HSI controller freer-upper, bestie
okay so this is a page from the Kernel API Manual (section 9, kernel-space realness β¨) and it's about hsi_put_controller β the little function whose whole entire job is to let an HSI controller go πΈ
π NAME π
hsi_put_controller β free an HSI controller, that's it, that's the whole vibe π
β¨ SYNOPSIS β¨
void hsi_put_controller (struct hsi_controller *hsi );
yeah that's the whole signature, no cap β returns void, takes one pointer, done π
π¦ ARGUMENTS π¦
hsiβ pointer to the HSI controller that's about to get freed π«Ά
like, this is the thing you're yeeting. nothing else. just the pointer to the struct hsi_controller you wanna free π
π DESCRIPTION π
okay bestie, listen, this one comes with rules and you need to actually follow them, i'm so serious π
HSI controller drivers should only use this function if they need to free their allocated hsi_controller structures before a successful call to hsi_register_controller.
π¨ and "other use is not allowed" β that's not me being dramatic, that is literally what the page says. so like, don't get creative with it. this is a very specific little window of allowed usage and you're either in it or you're not π
so tl;dr: pre-registration cleanup only. after hsi_register_controller succeeds? nope, not your moment, not your function π§
π SEE ALSO π
the kernel file we're living in is literally ./drivers/hsi/hsi_core.c, and here's the whole friend group of related calls β go read them, they're iconic:
hsi_port_unregister_clients(9)hsi_unregister_controller(9)hsi_register_controller(9)hsi_register_client_driver(9)hsi_alloc_controller(9)hsi_free_msg(9)hsi_alloc_msg(9)hsi_async(9)hsi_claim_port(9)hsi_release_port(9)hsi_register_port_event(9)hsi_unregister_port_event(9)hsi_event(9)hsi_get_channel_id_by_name(9)
π and that's the page!! stay in your pre-registration lane and everything will be cute π
mwah π β this cutie lives in ./drivers/hsi, dated October 2026, and it's filed under hsi_put_controller(9). see u in the man pages 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