_scsih_pcie...ve_by_handle(9)
β¨ NAME β¨
ok so this page is from the Kernel API Manual, and bestie, we're talking about _scsih_pcie_device_remove_by_handle β which, yes, is a whole mouthful, but it literally just means removing a pcie device object by handle π
like that's the whole gig.
πΈ SYNOPSIS πΈ
void _scsih_pcie_device_remove_by_handle (struct MPT3SAS_ADAPTER *ioc ,
u16 handle );
likeβ¦ it takes two things and returns nothing. void. no receipts, no return value, it just does the thing and dips π«Ά
π ARGUMENTS π
iocβ the per adapter object. yes per adapter, as in each adapter gets its own lil guy, and that's the one you're handing over πhandleβ device handle. the handle of the device. that's it, that's the whole description, slay for being concise π₯
π¦ SEE ALSO π¦
ok this is the part where the manpage goes absolutely feral and lists what feels like Every Single Symbol in mpt3sas_scsih.c β and ngl, we are NOT skipping a single one, because every single reference is iconic in its own way π
First up, the file itself and its lil gang of types:
./drivers/scsi/mpt3sas/mpt3sas_scsih.cenum device_responsive_state(9)struct sense_info(9)struct fw_event_work(9)struct _scsi_io_transfer(9)
The boot-device / address / debug girlies:
_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)
The "gimme the sdev" squad:
__mpt3sas_get_sdev_by_rphy(9)__mpt3sas_get_sdev_by_addr(9)mpt3sas_get_sdev_by_addr(9)mpt3sas_get_sdev_by_handle(9)
Add/remove energy, plus the getters that live nearby:
_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_add(9)
RAID device besties:
_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)
Expander + enclosure + "is this even an end device" crew:
mpt3sas_scsih_expander_find_by_handle(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)
SCSI lookup + queue depth + the target/sdev lifecycle girlies:
_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)
Task management era (abort and reset my beloved):
_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)
Firmware event squad:
_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)
Block/unblock nation (they contain the entire emotional range of IO flow):
_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)
Delayed-event / topology-check / volume-flag era:
_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)
Port + vphy refresh arc:
_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)
Command-sending / device-checking chapter:
_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)
The topology / status-change event cinematic universe:
_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)
Volumes, physical disks, and the IR event girlies:
_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)
Scan + reset + "who's still responding" saga:
_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)
Reset handlers, fw work, and shutdown crew:
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)
Probe + scan lifecycle (main character energy fr):
_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)
Power management + module init/exit finale β¨:
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)
and that's the whole list, no skips, no cuts, we ate and left zero crumbs π
ok bye bestie, this page is brought to you by the fine people over at ./drivers/scsi/mpt3sas, dated October 2026 β go forth and remove those pcie device objects by handle, you've got this ππ
π¦ 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