_scsih_deter..._boot_device(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸŽ€ NAME πŸŽ€

hey bestie πŸ’– welcome to _scsih_deter..._boot_device(9) from the Kernel API Manual β€” yes, the truncated-looking icon herself. okay so:

_scsih_determine_boot_device β€” determine boot device. periodt. πŸ‘‘


✨ SYNOPSIS ✨

void _scsih_determine_boot_device (struct MPT3SAS_ADAPTER *ioc , void
*device , u32 channel );

πŸ’… ARGUMENTS πŸ’…

  • ioc β€” per adapter object. the main-character adapter, basically. 🫢
  • device β€” a sas_device or pcie_device object. literally one of those two vibes. πŸ¦‹
  • channel β€” SAS or PCIe channel. pick your lane, bestie. 🌸

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so this routine determines whether this device should be the first reported device to to scsi-ml or sas transport β€” the whole purpose is persistent boot device energy. no cap. πŸ’«

there are primary, alternate, and current entries in bios page 2, and the order priority is primary, alternate, then current. so it's giving very β€œknow your ranking” behavior. the routine saves the corresponding device object. that saved data is to be used later in _scsih_probe_boot_devices. iconic. πŸŽ€


πŸ”₯ SEE ALSO πŸ”₯

the kernel file is ./drivers/scsi/mpt3sas/mpt3sas_scsih.c, and here is every single reference, zero skips, no crumbs left behind: πŸ’…

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), 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_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)

later, bestie 🫢 β€” this is the Kernel API Manual, source/version ./drivers/scsi/mpt3sas, dated October 2026, for _scsih_deter..._boot_device(9). periodt. πŸ’…

πŸ“¦ where this page comes from