scsih_remove(9)
π scsih_remove β straight out of the Kernel API Manual β¨
okay so bestie, gather round, because this little page is from the Kernel API Manual and it is short but it is doing something real. let's get into it π«Ά
πΈ NAME πΈ
scsih_remove β detach and remove add host
like yes, that's literally what it says, no notes, that's the whole vibe π
β¨ SYNOPSIS β¨
void scsih_remove (struct pci_dev *pdev );
that's it. that's the signature. she returns void, she takes one pointer, she's lowkey mysterious about it π₯
π ARGUMENTS π
pdevβ the PCI device struct. that's your girl right there, the one getting touched. π
π DESCRIPTION π
okay so here's the tea: this routine is called when unloading the driver. that's the whole description. no cap, that's it.
it's giving "exit gracefully" energy. the driver's leaving the party and scsih_remove is the one holding the door. πβ¨
π¦ SEE ALSO π¦
bestie. brace yourself. this SEE ALSO section ate and left absolutely no crumbs β it's a whole friend group of mpt3sas icons π
first up, the kernel file: ./drivers/scsi/mpt3sas/mpt3sas_scsih.c
then, in no particular order (okay fine, in exactly this order, i would never do you dirty like that):
- the 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_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)_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_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)
and that's the whole page, bestie β every single one of those (9) icons made it, nobody got left behind π§π
sign-off szn: this page lives in ./drivers/scsi/mpt3sas and it's dated October 2026 β so yes, she's from the future, and she's still just detaching and removing add host. iconic. 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