lpfc_io_resume(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so this is lpfc_io_resume(9), straight from the Kernel API Manual, and it is literally the lpfc method for resuming PCI I/O operation. periodt. 🩷


✨ SYNOPSIS ✨

void lpfc_io_resume (struct pci_dev *pdev );

🫢 ARGUMENTS 🫢

  • pdev β€” pointer to PCI device, bestie. that's the whole vibe. πŸŽ€

πŸ’… DESCRIPTION πŸ’…

okay so this routine is registered to the PCI subsystem for error handling. it gets called when kernel error recovery tells the lpfc driver that it is OK to resume normal PCI operation after PCI bus error recovery β€” like the kernel is texting the driver β€œyou're so back.” ✨

when this routine is invoked, it dispatches the action to the proper SLI-3 or SLI-4 device io_resume routine, which will resume the device operation. no cap, that's the whole flow. πŸ¦‹


πŸ‘€ SEE ALSO πŸ‘€

the Kernel file is ./drivers/scsi/lpfc/lpfc_init.c, and here are all the cross-refs β€” every single one, no skipping, iykyk. πŸ’œ

Kernel file ./drivers/scsi/lpfc/lpfc_init.c lpfc_config_port_prep(9),
lpfc_config_async_cmpl(9), lpfc_dump_wakeup_param_cmpl(9),
lpfc_update_vport_wwn(9), lpfc_config_port_post(9),
lpfc_sli4_refresh_params(9), lpfc_hba_init_link(9),
lpfc_hba_init_link_fc_topology(9), lpfc_hba_down_link(9),
lpfc_hba_down_prep(9), lpfc_sli4_free_sp_events(9),
lpfc_hba_free_post_buf(9), lpfc_hba_clean_txcmplq(9),
lpfc_hba_down_post_s3(9), lpfc_hba_down_post_s4(9),
lpfc_hba_down_post(9), lpfc_hb_timeout(9), lpfc_rrq_timeout(9),
lpfc_hb_mbox_cmpl(9), lpfc_hb_mxp_handler(9), lpfc_issue_hb_mbox(9),
lpfc_issue_hb_tmo(9), lpfc_hb_timeout_handler(9), lpfc_offline_eratt(9),
lpfc_sli4_offline_eratt(9), lpfc_handle_deferred_eratt(9),
lpfc_handle_eratt_s3(9), lpfc_sli4_port_sta_fn_reset(9),
lpfc_handle_eratt_s4(9), lpfc_handle_eratt(9), lpfc_handle_latt(9),
lpfc_parse_vpd(9), lpfc_get_atto_model_desc(9),
lpfc_get_hba_model_desc(9), lpfc_sli3_post_buffer(9),
lpfc_post_rcv_buf(9), lpfc_sha_init(9), lpfc_sha_iterate(9),
lpfc_challenge_key(9), lpfc_hba_init(9), lpfc_cleanup(9),
lpfc_stop_vport_timers(9), __lpfc_sli4_stop_fcf_redisc_wait_timer(9),
lpfc_sli4_stop_fcf_redisc_wait_timer(9), lpfc_cmf_stop(9),
lpfc_cmf_start(9), lpfc_stop_hba_timers(9), lpfc_block_mgmt_io(9),
lpfc_sli4_node_rpi_restore(9), lpfc_create_expedite_pool(9),
lpfc_destroy_expedite_pool(9), lpfc_create_multixri_pools(9),
lpfc_destroy_multixri_pools(9), lpfc_online(9), lpfc_unblock_mgmt_io(9),
lpfc_offline_prep(9), lpfc_offline(9), lpfc_scsi_free(9),
lpfc_io_free(9), lpfc_sli4_els_sgl_update(9),
lpfc_sli4_nvmet_sgl_update(9), lpfc_sli4_io_sgl_update(9),
lpfc_new_io_buf(9), lpfc_vmid_res_alloc(9), lpfc_create_port(9),
destroy_port(9), lpfc_get_instance(9), lpfc_scan_finished(9),
lpfc_host_attrib_init(9), lpfc_stop_port_s3(9), lpfc_stop_port_s4(9),
lpfc_stop_port(9), lpfc_fcf_redisc_wait_start_timer(9),
lpfc_sli4_fcf_redisc_wait_tmo(9), lpfc_vmid_poll(9),
lpfc_sli4_parse_latt_fault(9), lpfc_sli4_parse_latt_type(9),
lpfc_sli_port_speed_get(9), lpfc_sli4_port_speed_parse(9),
lpfc_sli4_async_link_evt(9), lpfc_async_link_speed_to_read_top(9),
lpfc_cgn_update_stat(9), lpfc_cgn_update_tstamp(9),
lpfc_cmf_stats_timer(9), lpfc_calc_cmf_latency(9), lpfc_cmf_timer(9),
lpfc_sli4_async_fc_evt(9), lpfc_sli4_async_sli_evt(9),
lpfc_sli4_perform_vport_cvl(9), lpfc_sli4_perform_all_vport_cvl(9),
lpfc_sli4_async_fip_evt(9), lpfc_sli4_async_dcbx_evt(9),
lpfc_sli4_async_grp5_evt(9), lpfc_sli4_async_cmstat_evt(9),
lpfc_cgn_params_val(9), lpfc_cgn_params_parse(9),
lpfc_sli4_cgn_params_read(9), lpfc_sli4_cgn_parm_chg_evt(9),
lpfc_sli4_async_event_proc(9), lpfc_sli4_fcf_redisc_event_proc(9),
lpfc_api_table_setup(9), lpfc_log_intr_mode(9), lpfc_enable_pci_dev(9),
lpfc_disable_pci_dev(9), lpfc_reset_hba(9),
lpfc_sli_sriov_nr_virtfn_get(9), lpfc_sli_probe_sriov_nr_virtfn(9),
lpfc_setup_driver_resource_phase1(9), lpfc_sli_driver_resource_setup(9),
lpfc_sli_driver_resource_unset(9), lpfc_sli4_driver_resource_setup(9),
lpfc_sli4_driver_resource_unset(9), lpfc_init_api_table_setup(9),
lpfc_setup_driver_resource_phase2(9),
lpfc_unset_driver_resource_phase2(9), lpfc_free_iocb_list(9),
lpfc_init_iocb_list(9), lpfc_free_sgl_list(9),
lpfc_free_els_sgl_list(9), lpfc_free_nvmet_sgl_list(9),
lpfc_init_active_sgl_array(9), lpfc_free_active_sgl(9),
lpfc_init_sgl_list(9), lpfc_sli4_init_rpi_hdrs(9),
lpfc_sli4_create_rpi_hdr(9), lpfc_sli4_remove_rpi_hdrs(9),
lpfc_hba_alloc(9), lpfc_hba_free(9), lpfc_setup_fdmi_mask(9),
lpfc_create_shost(9), lpfc_destroy_shost(9), lpfc_setup_bg(9),
lpfc_post_init_setup(9), lpfc_sli_pci_mem_setup(9),
lpfc_sli_pci_mem_unset(9), lpfc_sli4_post_status_check(9),
lpfc_sli4_bar0_register_memmap(9), lpfc_sli4_bar1_register_memmap(9),
lpfc_sli4_bar2_register_memmap(9), lpfc_create_bootstrap_mbox(9),
lpfc_destroy_bootstrap_mbox(9), lpfc_map_topology(9),
lpfc_sli4_read_config(9), lpfc_setup_endian_order(9),
lpfc_sli4_queue_verify(9), lpfc_sli4_queue_create(9),
lpfc_sli4_queue_destroy(9), lpfc_setup_cq_lookup(9),
lpfc_sli4_queue_setup(9), lpfc_sli4_queue_unset(9),
lpfc_sli4_cq_event_pool_create(9), lpfc_sli4_cq_event_pool_destroy(9),
__lpfc_sli4_cq_event_alloc(9), lpfc_sli4_cq_event_alloc(9),
__lpfc_sli4_cq_event_release(9), lpfc_sli4_cq_event_release(9),
lpfc_sli4_cq_event_release_all(9), lpfc_pci_function_reset(9),
lpfc_sli4_pci_mem_setup(9), lpfc_sli4_pci_mem_unset(9),
lpfc_sli_enable_msix(9), lpfc_sli_enable_msi(9),
lpfc_sli_enable_intr(9), lpfc_sli_disable_intr(9),
lpfc_find_cpu_handle(9), lpfc_find_hyper(9), lpfc_cpu_map_array_init(9),
lpfc_hba_eq_hdl_array_init(9), lpfc_cpu_affinity_check(9),
lpfc_cpuhp_get_eq(9), lpfc_irq_set_aff(9), lpfc_irq_clear_aff(9),
lpfc_irq_rebalance(9), lpfc_sli4_enable_msix(9),
lpfc_sli4_enable_msi(9), lpfc_sli4_enable_intr(9),
lpfc_sli4_disable_intr(9), lpfc_unset_hba(9),
lpfc_sli4_xri_exchange_busy_wait(9), lpfc_sli4_hba_unset(9),
__lpfc_reg_congestion_buf(9), lpfc_get_sli4_parameters(9),
lpfc_pci_probe_one_s3(9), lpfc_pci_remove_one_s3(9),
lpfc_pci_suspend_one_s3(9), lpfc_pci_resume_one_s3(9),
lpfc_sli_prep_dev_for_recover(9), lpfc_sli_prep_dev_for_reset(9),
lpfc_sli_prep_dev_for_perm_failure(9), lpfc_io_error_detected_s3(9),
lpfc_io_slot_reset_s3(9), lpfc_io_resume_s3(9),
lpfc_sli4_get_els_iocb_cnt(9), lpfc_sli4_get_iocb_cnt(9),
lpfc_write_firmware(9), lpfc_sli4_request_firmware_update(9),
lpfc_pci_probe_one_s4(9), lpfc_pci_remove_one_s4(9),
lpfc_pci_suspend_one_s4(9), lpfc_pci_resume_one_s4(9),
lpfc_sli4_prep_dev_for_recover(9), lpfc_sli4_prep_dev_for_reset(9),
lpfc_sli4_prep_dev_for_perm_failure(9), lpfc_io_error_detected_s4(9),
lpfc_io_slot_reset_s4(9), lpfc_io_resume_s4(9), lpfc_pci_probe_one(9),
lpfc_pci_remove_one(9), lpfc_pci_suspend_one(9), lpfc_pci_resume_one(9),
lpfc_io_error_detected(9), lpfc_io_slot_reset(9),
lpfc_sli4_oas_verify(9), lpfc_sli4_ras_init(9), lpfc_init(9),
lpfc_exit(9)

and that's the page, bestie 🫢 β€” it's lpfc_io_resume(9) from ./drivers/scsi/lpfc, dated October 2026, and it ate. πŸ’…βœ¨

πŸ“¦ where this page comes from