STRUCT HOST_PORT(9)
π NAME π
okay bestie, welcome to the struct host_port(9) page from the Kernel API Manual. NAME says it plain: struct host_port - host port details. It's literally the little record that keeps the host-port lore together, and it's giving main character energy in the kernel. slay. β¨
π SYNOPSIS π
here's the struct in all its exact, character-for-character glory β do not touch the code, bestie, we respect the code in this house:
struct host_port {
u64 sas_address;
u64 phy_mask;
u16 handle;
u8 iounit_port_id;
u8 used;
u8 lowest_phy;
};
that's the whole shape of it π
π¦ Members π¦
the members are giving tiny field, big job energy:
sas_addressβ the SAS Address of the attached device. iconic.phy_maskβ the phy mask of host port.handleβ the Device Handle of attached device.iounit_port_idβ the port ID.usedβ host port is already matched with sas port fromsas_port_list. yep, that's the whole "already matched" situation, no cap.lowest_phyβ the lowest phy ID of host port.
π₯ SEE ALSO π₯
Kernel file: ./drivers/scsi/mpi3mr/mpi3mr_transport.c
these are the cousins, bestie β every single SEE ALSO reference, no skips, fr fr:
mpi3mr_post_transport_req(9)mpi3mr_report_manufacture(9)__mpi3mr_expander_find_by_handle(9)mpi3mr_is_expander_device(9)mpi3mr_get_sas_address(9)__mpi3mr_get_tgtdev_by_addr(9)mpi3mr_get_tgtdev_by_addr(9)mpi3mr_remove_device_by_sas_address(9)__mpi3mr_get_tgtdev_by_addr_and_rphy(9)mpi3mr_expander_find_by_sas_address(9)__mpi3mr_sas_node_find_by_sas_address(9)mpi3mr_parent_present(9)mpi3mr_convert_phy_link_rate(9)mpi3mr_delete_sas_phy(9)mpi3mr_add_sas_phy(9)mpi3mr_add_phy_to_an_existing_port(9)mpi3mr_delete_sas_port(9)mpi3mr_del_phy_from_an_existing_port(9)mpi3mr_sas_port_sanity_check(9)mpi3mr_set_identify(9)mpi3mr_add_host_phy(9)mpi3mr_add_expander_phy(9)mpi3mr_alloc_hba_port(9)mpi3mr_get_hba_port_by_id(9)mpi3mr_update_links(9)mpi3mr_sas_host_refresh(9)mpi3mr_sas_host_add(9)mpi3mr_sas_port_add(9)mpi3mr_sas_port_remove(9)mpi3mr_update_mr_sas_port(9)mpi3mr_refresh_sas_ports(9)mpi3mr_refresh_expanders(9)mpi3mr_expander_node_add(9)mpi3mr_expander_add(9)mpi3mr_expander_node_remove(9)mpi3mr_expander_remove(9)mpi3mr_get_sas_negotiated_logical_linkrate(9)mpi3mr_report_tgtdev_to_sas_transport(9)mpi3mr_remove_tgtdev_from_sas_transport(9)mpi3mr_get_port_id_by_sas_phy(9)mpi3mr_get_port_id_by_rphy(9)mpi3mr_get_expander_phy_error_log(9)mpi3mr_transport_get_linkerrors(9)mpi3mr_transport_get_enclosure_identifier(9)mpi3mr_transport_get_bay_identifier(9)mpi3mr_expander_phy_control(9)mpi3mr_transport_phy_reset(9)mpi3mr_transport_phy_enable(9)mpi3mr_transport_phy_speed(9)mpi3mr_map_smp_buffer(9)mpi3mr_unmap_smp_buffer(9)mpi3mr_transport_smp_handler(9)
peace out, bestie π«Ά β source/version is ./drivers/scsi/mpi3mr, date is October 2026, and this has been the struct host_port(9) manual page. 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