hsi_put_controller(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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:


πŸ“ 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