ipc_kht_remove(9)
okay so bestie, welcome to ipc_kht_remove(9), and yes the Kernel API Manual name is folded in right at the top because we are absolutely not copy-pasting that header line, periodt π
.
π NAME π
ipc_kht_remove β remove an ipc from the key hashtable. That's the whole assignment: it takes an ipc out of the key hashtable. Slay.
β¨ SYNOPSIS β¨
void ipc_kht_remove (struct ipc_ids *ids , struct kern_ipc_perm *ipcp );
π«Ά ARGUMENTS π«Ά
idsβ the ipc identifier set. It's the ids situation.ipcpβ the ipc perm structure containing the key to remove. Yes, the key lives in there, and this is the structure that has it.
π DESCRIPTION π
Okay so the lock vibe check: before this function is called, ipc_ids.rwsem is held as a writer, and the spinlock for this ID is held too. On the way out, both of those stay locked. Like, they remain locked on the exit β no cap. So this function is doing its thing inside an already-locked setup, and it is not the one unlocking anything.
bestie, the held-lock situation is not a suggestion. ipc_ids.rwsem (writer mode) plus this ID's spinlock are already held before the call, and they are still held after the call. That's the documented deal. π
π SEE ALSO π
Kernel file ./ipc/util.c β and here's the whole friend group, no one left out:
ipc_init(9)ipc_init_ids(9)ipc_init_proc_interface(9)ipc_findkey(9)ipc_addid(9)ipcget_new(9)ipc_check_perms(9)ipcget_public(9)ipc_search_maxidx(9)ipc_rmid(9)ipc_set_key_private(9)ipcperms(9)kernel_to_ipc64_perm(9)ipc64_perm_to_ipc_perm(9)ipc_obtain_object_idr(9)ipc_obtain_object_check(9)ipcget(9)ipc_update_perm(9)ipcctl_obtain_check(9)ipc_parse_version(9)sysvipc_find_ipc(9)
xoxo, this cutie came from the source/version ./ipc and it's dated October 2026; the page is ipc_kht_remove(9), and that's the footer tea mentioned with a little sign-off ππ.
π¦ 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