STRUCT LEAPRAID_TOPO_NODE(9)
π struct leapraid_topo_node(9) π
okay bestie, listen up β this is the manual page for struct leapraid_topo_node(9) from the Kernel API Manual, and it's literally the SAS topology node for LeapRAID. think of it as the little index card that says "hi, this is a thing in the fabric, here's where it lives and who its parents are" π¦
β¨ NAME β¨
struct leapraid_topo_node β SAS topology node for LeapRAID
no cap, that's the whole vibe. one struct, one job: keep track of a node in the SAS topology.
π SYNOPSIS π
struct leapraid_topo_node {
struct list_head list;
struct list_head sas_port_list;
struct leapraid_card_port *card_port;
struct leapraid_card_phy *card_phy;
struct sas_rphy *rphy;
struct device *parent_dev;
u64 sas_address;
u64 sas_address_parent;
u8 phys_num;
u16 hdl;
u16 enc_hdl;
u64 enc_lid;
u8 resp;
};
look at her. fourteen fields. main character energy fr fr π
πΈ Members πΈ
okay so this is the part where we meet everyone in the group chat π
listβ the list head for linking nodes together. that's her job, that's her whole personality.sas_port_listβ a list of SAS ports. yes, another list. she's a connector.card_portβ the associated card port. like, which port on the card she's vibing with.card_phyβ the associated card PHY.rphyβ the SAS remote PHY device.parent_devβ pointer to the parent device. found family πsas_addressβ the SAS address of this node.sas_address_parentβ the parent node's SAS address. iykyk.phys_numβ number of physical links.hdlβ the handle identifier.enc_hdlβ the enclosure handle.enc_lidβ the enclosure logical identifier.respβ the response status flag.
heads up bestie π«Ά βphys_numandrespareu8,hdlandenc_hdlareu16, andsas_address,sas_address_parentandenc_lidareu64. the widths are literally right there in the synopsis, don't come for me.
π¦ SEE ALSO π¦
so the source of truth lives in the kernel file ./drivers/scsi/leapraid/leapraid_func.h, and here's the whole extended universe of related pages β no skipping, we're doing all of them π:
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_access_ctrl(9)struct leapraid_fw_log_desc(9)struct leapraid_card_port(9)struct leapraid_card_phy(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)
aaaand that's the page π it ships out of ./drivers/scsi/leapraid, dated October 2026, and the footer literally just says struct leapraid_topo_node(9) again because she's iconic like that. go read the other forty-two pages, i'll wait π
β¨π
π¦ 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