lpfc_sli4_parse_latt_type(9)
π¦ lpfc_sli4_parse_latt_type β a Kernel API Manual moment β¨
okay so bestie, we're in the Kernel API Manual today and this one is a lil' baby function with a big job. It's lpfc_sli4_parse_latt_type, and yes the name is a mouthful, but it lowkey eats. Let's get into it π
πΈ NAME πΈ
lpfc_sli4_parse_latt_type β parse sli4 link attention type. that's the whole vibe. it parses, it's sli4, it's link attention type. iconic behavior honestly π
β¨ SYNOPSIS β¨
uint8_t lpfc_sli4_parse_latt_type (struct lpfc_hba *phba , struct
lpfc_acqe_link *acqe_link );
and yeah, it returns a uint8_t. noted. we love a small return type with main character energy π
π«Ά ARGUMENTS π«Ά
phbaβ pointer to lpfc hba data structure. the hba in question. the whole point, fr fr πacqe_linkβ pointer to the async link completion queue entry. the receipts, basically. the thing that just happened, packaged up all cute for you π¦
π DESCRIPTION π
so the whole deal is this: this routine parses the SLI4 link attention type and translates it into the base driver's link attention type coding. that's it. that's the function. translation queen β it takes the SLI4 flavor and turns it into the coding the base driver actually speaks. no cap π§
like... it's giving translator at a group project. everyone's talking in SLI4, and this little function is the one making sure the base driver understands what just got said. lowkey essential, highkey underrated π
β RETURN β
returns the link attention type β but in terms of the base driver's coding. so not the raw SLI4 thing, the translated thing. iykyk π
bestie this is the whole reason the function exists, so like... use the return value. don't just call it for funsies π
π SEE ALSO π
okay so this is the part where I hold your hand, because this list is long β like, scroll-for-a-while long β but every single one of these is in the same neighborhood (Kernel file ./drivers/scsi/lpfc/lpfc_init.c) and you're gonna want them bookmarked. buckle up, bestie, we're listing them ALL π₯
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_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_io_resume(9)lpfc_sli4_oas_verify(9),lpfc_sli4_ras_init(9),lpfc_init(9),lpfc_exit(9)
see? told you. long list. but you got this, bestie πͺ every single one, no skips, periodt π
and that's the whole page, bestie π«Ά this lil' gem lives in ./drivers/scsi/lpfc and the manual's dated October 2026 β so like, she's got a date, she's got a source directory, she's got main character energy. go forth and parse those link attention types πβ¨π
π¦ 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