mpi3mr_get_sas_address(9)
π mpi3mr_get_sas_address(9) β bestie edition π
okay so welcome to the mpi3mr_get_sas_address page, straight out of the Kernel API Manual β¨ this one's a little function that goes and fetches a SAS address for you and honestly? she's short, she's sweet, she's giving reliable-best-friend energy π«Ά
β¨ NAME β¨
mpi3mr_get_sas_address β retrieve sas_address for handle π
πΈ SYNOPSIS πΈ
int mpi3mr_get_sas_address (struct mpi3mr_ioc *mrioc , u16 handle , u64
*sas_address );
no cap, that's the whole signature. three args, one int coming back at you π
π¦ ARGUMENTS π¦
mriocβ the adapter instance reference, aka your main character pointer to the whole controller vibe πhandleβ the firmware device handle, so like, which device are we talking about here πsas_addressβ the address that's gonna hold the SAS address. yes the address holds the address, we don't make the rules π
π DESCRIPTION π
so what does she actually do? literally this: the function issues a device page0 read for a given device handle, gets the SAS address, and returns it back to you π that's it, that's the whole function, and honestly? iconic. obsessed. periodt.
β RETURN β
0for success π- non-zero for failure π
that's the entire contract bestie, no fancy status codes, no hidden lore π§
π SEE ALSO π
the kernel file lives right here:
./drivers/scsi/mpi3mr/mpi3mr_transport.c
and here's the whole friend group, every single one, no gatekeeping π
mpi3mr_post_transport_req(9)mpi3mr_report_manufacture(9)__mpi3mr_expander_find_by_handle(9)mpi3mr_is_expander_device(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)struct host_port(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)
okay that's the whole page, you ate it, i'm so proud of you π₯Ήπ
sign-off time: this one lives under ./drivers/scsi/mpi3mr, it's dated October 2026, and yes the manual name is still mpi3mr_get_sas_address(9) because we don't change the title of a classic π bye bestie, go read your device page0 πβ¨
π¦ 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