STRUCT LEAPRAID_ACCESS_CTRL(9)
π NAME π
struct leapraid_access_ctrl β the access control structure for LeapRAID, bestie. that's it, that's the whole vibe β¨
okay so real talk, you're looking at the Kernel API Manual page for struct leapraid_access_ctrl(9), and honestly? it's giving "small struct, big responsibilities" π
πΈ SYNOPSIS πΈ
here's the whole thing, copy it exactly, no cap:
struct leapraid_access_ctrl {
struct mutex pci_access_lock;
u8 shost_recovering;
wait_queue_head_t recovery_waitq;
u8 shost_recover_async;
wait_queue_head_t shost_recover_wq;
u8 host_removing;
u8 pcie_recovering;
};
likeβ¦ seven members. a whole little glow-up of flags and locks. we love a compact icon π
π Members π
pci_access_lockβ the mutex for PCI access control. it's the bouncer at the door fr fr πͺshost_recoveringβ flag saying whether the host is recovering. yes/no, that's the whole energy π©Ήshost_recover_asyncβ flag saying whether the host is recovering and the0xFFFFevent. two things at once, multitasking queen β¨shost_recover_wqβ the wait queue for threads that are out here waiting onshost_recover_async. they're in the group chat, just lurking πhost_removingβ flag saying whether the host is being removed. it's not being dramatic, it's literally leaving πpcie_recoveringβ flag saying whether PCIe is recovering. healing era π§
ngl the struct also has a recovery_waitq member in the synopsis above, but this page doesn't describe it β so we're not gonna make anything up about it, periodt π
π SEE ALSO π
these are all the siblings in the same kernel file, ./drivers/scsi/leapraid/leapraid_func.h. go say hi π
struct leapraid_adapter_features(9)struct leapraid_adapter_attr(9)struct leapraid_io_req_tracker(9)struct leapraid_task_tracker(9)struct leapraid_rep_desc_maint(9)struct leapraid_rep_desc_seg_maint(9)struct leapraid_mem_desc(9)enum LEAPRAID_CB_INDEX(9)struct leapraid_default_reply(9)struct leapraid_sense_buffer(9)struct leapraid_driver_cmd(9)struct leapraid_driver_cmds(9)struct leapraid_dynamic_task_desc(9)struct leapraid_fw_evt_work(9)struct leapraid_fw_evt_struct(9)struct leapraid_rq(9)struct leapraid_int_rq(9)struct leapraid_blk_mq_poll_rq(9)struct leapraid_notification_desc(9)struct leapraid_overheat_desc(9)struct leapraid_reset_desc(9)struct leapraid_scan_dev_desc(9)struct leapraid_fw_log_desc(9)struct leapraid_card_port(9)struct leapraid_card_phy(9)struct leapraid_topo_node(9)struct leapraid_dev_topo(9)struct leapraid_boot_dev(9)struct leapraid_boot_devs(9)struct leapraid_adapter(9)struct leapraid_enc_node(9)struct leapraid_raid_volume(9)struct leapraid_starget_priv(9)struct leapraid_sdev_priv(9)struct leapraid_sas_dev(9)struct leapraid_sas_port(9)struct leapraid_vphy(9)struct leapraid_tgt_rst_list(9)struct sense_info(9)struct leapraid_fw_log_info(9)enum reset_type(9)struct leapraid_card_port_feature(9)
okay that's the whole page, you ate that π go read the other forty-two, iykyk π¦
π sign-off szn: this lives under./drivers/scsi/leapraid, dated October 2026, and yes the page itself isstruct leapraid_access_ctrl(9). 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