STRUCT IPC_PROTOCOL_AP_SHM(9)
π struct ipc_protocol_ap_shm β the kernel API manual bestie edition π
okay so listen π this is the page for struct ipc_protocol_ap_shm, straight out of the Kernel API Manual β it's the Protocol Shared Memory Structure and honestly? it's kind of the main character of the shared-memory situation. let's get into it β¨
πΈ NAME πΈ
struct ipc_protocol_ap_shm β Protocol Shared Memory Structure π
that's it, that's the whole name, no cap.
β¨ SYNOPSIS β¨
here's the whole struct, copy it exact because we do not freestyle kernel definitions π«Ά
struct ipc_protocol_ap_shm {
struct ipc_protocol_context_info ci;
struct ipc_protocol_device_info device_info;
__le32 msg_head;
__le32 head_array[IPC_MEM_MAX_PIPES];
__le32 msg_tail;
__le32 tail_array[IPC_MEM_MAX_PIPES];
union ipc_mem_msg_entry msg_ring[IPC_MEM_MSG_ENTRIES];
};
look at her. gorgeous. iconic. the layout is immaculate π
π Members π
bestie these are the fields, do not lose track, we go in order β¨
ciβ the context information struct π§ literally the vibes/context of the whole thingdevice_infoβ the device information struct π this is where the device spills its infomsg_headβ it points to the msg head, that's the whole job, lowkey dedicatedhead_arrayβ an array of head pointers π― like a little squad of headsmsg_tailβ points to the msg tail, the head's other half, cutetail_arrayβ an array of tail pointers π¦ a whole friend group of tailsmsg_ringβ the circular buffers for the read/tail and write/head indeces π (yes that's how it's spelled in the source, we don't edit, we report) β this is the actual ring where messages go round and round like a carousel π
π¦ SEE ALSO π¦
okay the Kernel file is ./drivers/net/wwan/iosm/iosm_ipc_protocol.h and here's the whole friend group of structs and functions you should also go look at, all of them, no skipping π
struct ipc_protocol_context_info(9)struct ipc_protocol_device_info(9)struct iosm_protocol(9)struct ipc_call_msg_send_args(9)ipc_protocol_tq_msg_send(9)ipc_protocol_msg_send(9)ipc_protocol_suspend(9)ipc_protocol_s2idle_sleep(9)ipc_protocol_resume(9)ipc_protocol_pm_dev_sleep_handle(9)ipc_protocol_doorbell_trigger(9)ipc_protocol_sleep_notification_string(9)ipc_protocol_init(9)ipc_protocol_deinit(9)
like a whole group chat of related symbols fr fr π₯ go say hi to all of them π
okay that's the whole page, nothing left out, we ate and left zero crumbs ππ
and that's a wrap bestie β shoutout to ./drivers/net/wwan/iosm for being the source directory, version October 2026 for the timestamp, and the title struct ipc_protocol_ap_shm(9) for the whole era π see you in the next manpage, mwah πβ¨π
π¦ 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