STRUCT ADAPTER_REPLY_QUEUE(9)
π struct adapter_reply_queue(9) π
okay so bestie, welcome to the Kernel API Manual entry for struct adapter_reply_queue β it's a big day for the mpt3sas girlies π this is literally the reply queue struct, and we're gonna go through it line by line, no skips, no cap.
β¨ NAME β¨
struct adapter_reply_queue β the reply queue struct. that's it, that's the tweet π¦
πΈ SYNOPSIS πΈ
struct adapter_reply_queue {
struct MPT3SAS_ADAPTER *ioc;
u8 msix_index;
u32 reply_post_host_index;
Mpi2ReplyDescriptorsUnion_t *reply_post_free;
char name[MPT_NAME_LENGTH];
atomic_t busy;
u32 os_irq;
struct irq_poll irqpoll;
bool irq_poll_scheduled;
bool irq_line_enable;
bool is_iouring_poll_q;
struct list_head list;
};
like, that's the whole struct, exactly as written, don't come for me about the indentation on that last }; β we keep it verbatim in this house π―
π¦ Members π¦
so these are the members, one by one, in order, because we do not skip:
iocβ the per adapter object π«Ά like, the whole adapter, just chilling in theremsix_indexβ the msix index into the vector tablereply_post_host_indexβ the head index in the pool where FW completes IO (FW = firmware, bestie, it's doing the actual IO completion thing)reply_post_freeβ the reply post base virt addressnameβ the name registered torequest_irqπbusyβ anatomic_ttelling you the isr is actively processing replies on another cpu π so yeah, it's busy busyos_irqβ the irq numberirqpollβ theirq_pollobjectirq_poll_scheduledβ tells whether irq poll is scheduled or not. a yes/no vibe check basically β¨is_iouring_poll_qβ tells whether reply queues is assigned to io uring poll queues or not π (writing it exactly how the page writes it, ngl)listβ this list. iconic, no notes. it's the list. it lists. π
ngl the struct up top also declaresirq_line_enablebut the Members section doesn't say a single word about it π so we're not gonna invent lore. it's there, it's abool, and the manpage is silent. respect the silence.
π§ SEE ALSO π§
the friend group, the whole cast, the extended universe β all in Kernel file ./drivers/scsi/mpt3sas/mpt3sas_base.h:
struct MPT3SAS_TARGET(9)struct MPT3SAS_DEVICE(9)struct _internal_cmd(9)struct _sas_device(9)pcie_device_get(9)pcie_device_free(9)pcie_device_put(9)struct _boot_device(9)struct _sas_port(9)struct _sas_phy(9)struct _sas_node(9)struct _enclosure_node(9)enum reset_type(9)struct pcie_sg_list(9)struct chain_tracker(9)struct scsiio_tracker(9)struct request_tracker(9)struct _tr_list(9)struct _sc_list(9)struct _event_ack_list(9)struct io_uring_poll_queue(9)struct virtual_phy(9)struct hba_port(9)struct htb_rel_query(9)struct MPT3SAS_ADAPTER(9)
go read all of them, it's giving study group ππ
okay and finally, the cute sign-off π this page lives under ./drivers/scsi/mpt3sas and it's dated October 2026, so yeah β drive safe, request your irq responsibly, and remember: the reply queue is always the main character. periodt. π
β¨
π¦ 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