mpt3sas_scs...nd_by_handle(9)
π
mpt3sas_scs...nd_by_handle(9) β hey bestie, welcome to the Kernel API Manual, section 9 β¨
okay so real talk, this page is about the function mpt3sas_scsih_expander_find_by_handle, and yes the title got squished by the man-page machinery, we don't ask questions π«Ά. It lives in section 9 of the Kernel API Manual and it's giving "small function, big friend group" energy. Let's go π
β¨ NAME β¨
mpt3sas_scsih_expander_find_by_handle β the expander device search, aka "bestie, go find that expander for me" π
πΈ SYNOPSIS πΈ
struct _sas_node * mpt3sas_scsih_expander_find_by_handle (struct
MPT3SAS_ADAPTER *ioc , u16 handle );
no cap, that's the whole signature. she takes two things and gives you back a struct _sas_node * π
π¦ ARGUMENTS π¦
iocβ the per adapter object. like, YOUR adapter. the one you're working with. main character energy πhandleβ the expander handle (assigned by firmware). firmware handed this number out, so you're just rolling with it β¨
π CONTEXT π
β οΈ heads up bestie: the calling function should acquire ioc->sas_device_lock. yes, should. please lock it. do not be the person who skips the lock, i am begging ππ
π§ DESCRIPTION π§
So what does she actually do? This searches for an expander device based on handle, then returns the sas_node object. That's it. That's the whole vibe. search by handle β get sas_node β slay π
ngl it's a short man page but the SEE ALSO list is enormous, so buckle up π
π₯ SEE ALSO π₯
Kernel file ./drivers/scsi/mpt3sas/mpt3sas_scsih.c and honestly the whole extended friend group:
enum device_responsive_state(9)struct sense_info(9)struct fw_event_work(9)struct _scsi_io_transfer(9)_scsih_set_debug_level(9)_scsih_srch_boot_sas_address(9)_scsih_srch_boot_device_name(9)_scsih_srch_boot_encl_slot(9)mpt3sas_get_port_by_id(9)mpt3sas_get_vphy_by_phy(9)_scsih_is_boot_device(9)_scsih_get_sas_address(9)_scsih_determine_boot_device(9)mpt3sas_get_pdev_from_target(9)__mpt3sas_get_sdev_by_rphy(9)__mpt3sas_get_sdev_by_addr(9)mpt3sas_get_sdev_by_addr(9)mpt3sas_get_sdev_by_handle(9)_scsih_display_enclosure_chassis_info(9)_scsih_sas_device_remove(9)_scsih_device_remove_by_handle(9)mpt3sas_device_remove_by_sas_address(9)_scsih_sas_device_add(9)_scsih_sas_device_init_add(9)mpt3sas_get_pdev_by_wwid(9)mpt3sas_get_pdev_by_handle(9)_scsih_set_nvme_max_shutdown_latency(9)_scsih_pcie_device_remove(9)_scsih_pcie_device_remove_by_handle(9)_scsih_pcie_device_add(9)_scsih_raid_device_find_by_id(9)mpt3sas_raid_device_find_by_handle(9)_scsih_raid_device_find_by_wwid(9)_scsih_raid_device_add(9)_scsih_raid_device_remove(9)mpt3sas_scsih_enclosure_find_by_handle(9)mpt3sas_scsih_expander_find_by_sas_address(9)_scsih_expander_node_add(9)_scsih_is_end_device(9)_scsih_is_nvme_pciescsi_device(9)_scsih_scsi_lookup_find_by_target(9)_scsih_scsi_lookup_find_by_lun(9)mpt3sas_scsih_scsi_lookup_get(9)scsih_change_queue_depth(9)mpt3sas_scsih_change_queue_depth(9)scsih_target_alloc(9)scsih_target_destroy(9)scsih_sdev_init(9)scsih_sdev_destroy(9)_scsih_display_sata_capabilities(9)scsih_is_raid(9)scsih_get_resync(9)scsih_get_state(9)_scsih_set_level(9)_scsih_get_volume_capabilities(9)_scsih_enable_tlr(9)scsih_sdev_configure(9)scsih_bios_param(9)_scsih_response_code(9)_scsih_tm_done(9)mpt3sas_scsih_set_tm_flag(9)mpt3sas_scsih_clear_tm_flag(9)scsih_tm_cmd_map_status(9)scsih_tm_post_processing(9)mpt3sas_scsih_issue_tm(9)_scsih_tm_display_info(9)scsih_abort(9)scsih_dev_reset(9)scsih_target_reset(9)scsih_host_reset(9)_scsih_fw_event_add(9)_scsih_fw_event_del_from_list(9)_scsih_fw_event_requeue(9)_scsih_error_recovery_delete_devices(9)mpt3sas_port_enable_complete(9)_scsih_fw_event_cleanup_queue(9)_scsih_internal_device_block(9)_scsih_internal_device_unblock(9)_scsih_ublock_io_all_device(9)_scsih_ublock_io_device_wait(9)_scsih_ublock_io_device(9)_scsih_block_io_all_device(9)_scsih_block_io_device(9)_scsih_block_io_to_children_attached_to_ex(9)_scsih_block_io_to_children_attached_directly(9)_scsih_block_io_to_pcie_children_attached_directly(9)_scsih_tm_tr_send(9)_scsih_tm_tr_complete(9)_scsih_sas_control_complete(9)_scsih_tm_tr_volume_send(9)_scsih_tm_volume_tr_complete(9)_scsih_issue_delayed_event_ack(9)_scsih_issue_delayed_sas_io_unit_ctrl(9)mpt3sas_check_for_pending_internal_cmds(9)_scsih_check_for_pending_tm(9)_scsih_check_topo_delete_events(9)_scsih_check_pcie_topo_remove_events(9)_scsih_set_volume_delete_flag(9)_scsih_set_volume_handle_for_tr(9)_scsih_check_ir_config_unhide_events(9)_scsih_check_volume_delete_events(9)_scsih_temp_threshold_events(9)_scsih_flush_running_cmds(9)_scsih_setup_eedp(9)_scsih_eedp_error_handling(9)scsih_qcmd(9)_scsih_normalize_sense(9)_scsih_scsi_ioc_info(9)_scsih_turn_on_pfa_led(9)_scsih_turn_off_pfa_led(9)_scsih_send_event_to_turn_on_pfa_led(9)_scsih_smart_predicted_fault(9)_scsih_io_done(9)_scsih_update_vphys_after_reset(9)_scsih_get_port_table_after_reset(9)_scsih_look_and_get_matched_port_entry(9)_scsih_del_phy_part_of_anther_port(9)_scsih_add_or_del_phys_from_existing_port(9)_scsih_del_dirty_vphy(9)_scsih_del_dirty_port_entries(9)_scsih_sas_port_refresh(9)_scsih_alloc_vphy(9)_scsih_sas_host_refresh(9)_scsih_sas_host_add(9)_scsih_expander_add(9)mpt3sas_expander_remove(9)_scsih_done(9)_scsi_send_scsi_io(9)_scsih_determine_disposition(9)_scsih_report_luns(9)_scsih_start_unit(9)_scsih_test_unit_ready(9)_scsih_ata_pass_thru_idd(9)_scsih_wait_for_device_to_become_ready(9)_scsih_wait_for_target_to_become_ready(9)_scsih_check_access_status(9)_scsih_check_device(9)_scsih_add_device(9)_scsih_remove_device(9)_scsih_sas_topology_change_event_debug(9)_scsih_sas_topology_change_event(9)_scsih_sas_device_status_change_event_debug(9)_scsih_sas_device_status_change_event(9)_scsih_check_pcie_access_status(9)_scsih_pcie_device_remove_from_sml(9)_scsih_pcie_check_device(9)_scsih_pcie_add_device(9)_scsih_pcie_topology_change_event_debug(9)_scsih_pcie_topology_change_event(9)_scsih_pcie_device_status_change_event_debug(9)_scsih_pcie_device_status_change_event(9)_scsih_sas_enclosure_dev_status_change_event_debug(9)_scsih_sas_enclosure_dev_status_change_event(9)_scsih_sas_broadcast_primitive_event(9)_scsih_sas_discovery_event(9)_scsih_sas_device_discovery_error_event(9)_scsih_pcie_enumeration_event(9)_scsih_ir_fastpath(9)_scsih_reprobe_lun(9)_scsih_sas_volume_add(9)_scsih_sas_volume_delete(9)_scsih_sas_pd_expose(9)_scsih_sas_pd_hide(9)_scsih_sas_pd_delete(9)_scsih_sas_pd_add(9)_scsih_sas_ir_config_change_event_debug(9)_scsih_sas_ir_config_change_event(9)_scsih_sas_ir_volume_event(9)_scsih_sas_ir_physical_disk_event(9)_scsih_sas_ir_operation_status_event_debug(9)_scsih_sas_ir_operation_status_event(9)_scsih_prep_device_scan(9)_scsih_update_device_qdepth(9)_scsih_mark_responding_sas_device(9)_scsih_create_enclosure_list_after_reset(9)_scsih_search_responding_sas_devices(9)_scsih_mark_responding_pcie_device(9)_scsih_search_responding_pcie_devices(9)_scsih_mark_responding_raid_device(9)_scsih_search_responding_raid_devices(9)_scsih_mark_responding_expander(9)_scsih_search_responding_expanders(9)_scsih_remove_unresponding_devices(9)_scsih_scan_for_devices_after_reset(9)mpt3sas_scsih_pre_reset_handler(9)mpt3sas_scsih_clear_outstanding_scsi_tm_commands(9)mpt3sas_scsih_reset_done_handler(9)_mpt3sas_fw_work(9)_firmware_event_work(9)mpt3sas_scsih_event_callback(9)_scsih_expander_node_remove(9)_scsih_nvme_shutdown(9)_scsih_ir_shutdown(9)_scsih_get_shost_and_ioc(9)scsih_remove(9)scsih_shutdown(9)_scsih_probe_boot_devices(9)_scsih_probe_raid(9)_scsih_probe_sas(9)get_next_pcie_device(9)pcie_device_make_active(9)_scsih_probe_pcie(9)_scsih_probe_devices(9)scsih_scan_start(9)_scsih_complete_devices_scanning(9)scsih_scan_finished(9)scsih_map_queues(9)_scsih_determine_hba_mpi_version(9)_scsih_probe(9)scsih_suspend(9)scsih_resume(9)scsih_pci_error_detected(9)scsih_pci_slot_reset(9)scsih_pci_resume(9)scsih_pci_mmio_enabled(9)scsih_init(9)scsih_exit(9)_mpt3sas_init(9)_mpt3sas_exit(9)
likeβ¦ that's the whole mpt3sas extended universe, i'm obsessed ππ
and that's the page!! this lil gem comes to you from ./drivers/scsi/mpt3sas, dated October 2026, and it's part of the Kernel API Manual β go forth and find those expanders, bestie π¦β¨π
π¦ 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