lpfc_sli_api_table_setup(9)
π lpfc_sli_api_table_setup(9) β straight outta the Kernel API Manual β¨
okay bestie, buckle up, because today we're digging into lpfc_sli_api_table_setup, and honestly? she's a little setup gremlin and we love her for it π
πΈ NAME πΈ
lpfc_sli_api_table_setup β sets up the sli api function jump table. that's the whole vibe. no cap π«Ά
β¨ SYNOPSIS β¨
int lpfc_sli_api_table_setup (struct lpfc_hba *phba , uint8_t dev_grp );
π¦ ARGUMENTS π¦
phbaβ the hba struct this call is doing its whole little performance for. it's the main character of this function, obviously πdev_grpβ the HBA PCI-Device group number. that's theuint8_tbestie, keep her safe π
π DESCRIPTION π
so basically this routine sets up the SLI interface API function jump table inside the phba struct. like, it's literally building the table of function pointers, and that's it, and that's iconic. the way that a single function can just β¨arrangeβ¨ the whole jump table? obsessed. periodt. π₯
π RETURN π
0β success, slay, we ate π-ENODEVβ failure π no device, no party
π SEE ALSO π
okay so the cross-reference list here is genuinely enormous β like, she's giving main character energy in the index, and we are NOT skipping a single name, so here we go π§β¨
Kernel file ./drivers/scsi/lpfc/lpfc_sli.c π« and then, in order:
lpfc_sli4_pcimem_bcopy(9),lpfc_sli4_wq_put(9),lpfc_sli4_wq_release(9),lpfc_sli4_mq_put(9),lpfc_sli4_mq_release(9)lpfc_sli4_eq_get(9),lpfc_sli4_eq_clr_intr(9),lpfc_sli4_if6_eq_clr_intr(9),lpfc_sli4_write_eq_db(9),lpfc_sli4_if6_write_eq_db(9)lpfc_sli4_cq_get(9),lpfc_sli4_write_cq_db(9),lpfc_sli4_if6_write_cq_db(9),lpfc_cmd_iocb(9),lpfc_resp_iocb(9)__lpfc_sli_get_iocbq(9),__lpfc_clear_active_sglq(9),__lpfc_get_active_sglq(9),lpfc_clr_rrq_active(9),lpfc_handle_rrq_active(9)lpfc_get_active_rrq(9),lpfc_cleanup_vports_rrqs(9),lpfc_test_rrq_active(9),lpfc_set_rrq_active(9),__lpfc_sli_get_els_sglq(9)__lpfc_sli_get_nvmet_sglq(9),lpfc_sli_get_iocbq(9),__lpfc_sli_release_iocbq_s4(9),__lpfc_sli_release_iocbq_s3(9),__lpfc_sli_release_iocbq(9)lpfc_sli_release_iocbq(9),lpfc_sli_cancel_iocbs(9),lpfc_sli_iocb_cmd_type(9),lpfc_sli_ring_map(9),lpfc_sli_ringtxcmpl_put(9)lpfc_sli_ringtx_get(9),lpfc_cmf_sync_cmpl(9),lpfc_issue_cmf_sync_wqe(9),lpfc_sli_next_iocb_slot(9),lpfc_sli_next_iotag(9)lpfc_sli_submit_iocb(9),lpfc_sli_update_full_ring(9),lpfc_sli_update_ring(9),lpfc_sli_resume_iocb(9),lpfc_sli_next_hbq_slot(9)lpfc_sli_hbqbuf_free_all(9),lpfc_sli_hbq_to_firmware(9),lpfc_sli_hbq_to_firmware_s3(9),lpfc_sli_hbq_to_firmware_s4(9),lpfc_sli_hbqbuf_fill_hbqs(9)lpfc_sli_hbqbuf_add_hbqs(9),lpfc_sli_hbqbuf_init_hbqs(9),lpfc_sli_rqbuf_get(9),lpfc_sli_hbqbuf_find(9),lpfc_sli_free_hbq(9)lpfc_sli_chk_mbx_command(9),lpfc_sli_wake_mbox_wait(9),lpfc_sli_def_mbox_cmpl(9),lpfc_sli_handle_mb_event(9),lpfc_sli_get_buff(9)lpfc_nvme_unsol_ls_handler(9),lpfc_complete_unsol_iocb(9),lpfc_sli_process_unsol_iocb(9),lpfc_sli_iocbq_lookup(9),lpfc_sli_iocbq_lookup_by_tag(9)lpfc_sli_process_sol_iocb(9),lpfc_sli_rsp_pointers_error(9),lpfc_poll_eratt(9),lpfc_sli_handle_fast_ring_event(9),lpfc_sli_sp_handle_rspiocb(9)lpfc_sli_handle_slow_ring_event(9),lpfc_sli_handle_slow_ring_event_s3(9),lpfc_sli_handle_slow_ring_event_s4(9),lpfc_sli_abort_iocb_ring(9),lpfc_sli_abort_fcp_rings(9)lpfc_sli_flush_io_rings(9),lpfc_sli_brdready_s3(9),lpfc_sli_brdready_s4(9),lpfc_sli_brdready(9),lpfc_reset_barrier(9)lpfc_sli_brdkill(9),lpfc_sli_brdreset(9),lpfc_sli4_brdreset(9),lpfc_sli_brdrestart_s3(9),lpfc_sli_brdrestart_s4(9)lpfc_sli_brdrestart(9),lpfc_sli_chipset_init(9),lpfc_sli_hbq_count(9),lpfc_sli_hbq_entry_count(9),lpfc_sli_hbq_size(9)lpfc_sli_hbq_setup(9),lpfc_sli4_rb_setup(9),lpfc_sli_config_port(9),lpfc_sli_hba_setup(9),lpfc_sli4_read_fcoe_params(9)lpfc_sli4_read_rev(9),lpfc_sli4_get_ctl_attr(9),lpfc_sli4_retrieve_pport_name(9),lpfc_sli4_arm_cqeq_intr(9),lpfc_sli4_get_avail_extnt_rsrc(9)lpfc_sli4_chk_avail_extnt_rsrc(9),lpfc_sli4_cfg_post_extnts(9),lpfc_sli4_alloc_extent(9),lpfc_sli4_dealloc_extent(9),lpfc_ras_stop_fwlog(9)lpfc_sli4_ras_dma_free(9),lpfc_sli4_ras_dma_alloc(9),lpfc_sli4_ras_mbox_cmpl(9),lpfc_sli4_ras_fwlog_init(9),lpfc_sli4_ras_setup(9)lpfc_sli4_alloc_resource_identifiers(9),lpfc_sli4_dealloc_resource_identifiers(9),lpfc_sli4_get_allocated_extnts(9),lpfc_sli4_repost_sgl_list(9),lpfc_sli4_repost_io_sgl_list(9)lpfc_init_idle_stat_hb(9),lpfc_rx_monitor_create_ring(9),lpfc_rx_monitor_destroy_ring(9),lpfc_rx_monitor_record(9),lpfc_rx_monitor_report(9)lpfc_cmf_setup(9),lpfc_get_platform_uuid(9),lpfc_sli4_hba_setup(9),lpfc_mbox_timeout(9),lpfc_sli4_mbox_completions_pending(9)lpfc_sli4_process_missed_mbox_completions(9),lpfc_mbox_timeout_handler(9),lpfc_sli_issue_mbox_s3(9),lpfc_sli4_async_mbox_block(9),lpfc_sli4_async_mbox_unblock(9)lpfc_sli4_wait_bmbx_ready(9),lpfc_sli4_post_sync_mbox(9),lpfc_sli_issue_mbox_s4(9),lpfc_sli4_post_async_mbox(9),lpfc_sli_issue_mbox(9)lpfc_mbox_api_table_setup(9),__lpfc_sli_ringtx_put(9),lpfc_sli_next_iocb(9),__lpfc_sli_issue_iocb_s3(9),__lpfc_sli_issue_fcp_io_s3(9)__lpfc_sli_issue_fcp_io_s4(9),__lpfc_sli_issue_iocb_s4(9),lpfc_sli4_calc_ring(9),lpfc_sli_issue_iocb(9),lpfc_extra_ring_setup(9)lpfc_sli_async_event_handler(9),lpfc_sli4_setup(9),lpfc_sli_setup(9),lpfc_sli4_queue_init(9),lpfc_sli_queue_init(9)lpfc_sli_mbox_sys_flush(9),lpfc_sli_host_down(9),lpfc_sli_hba_down(9),lpfc_sli_pcimem_bcopy(9),lpfc_sli_bemem_bcopy(9)lpfc_sli_ringpostbuf_put(9),lpfc_sli_get_buffer_tag(9),lpfc_sli_ring_taggedbuf_get(9),lpfc_sli_ringpostbuf_get(9),lpfc_sli_abort_els_cmpl(9)lpfc_ignore_els_cmpl(9),lpfc_sli_issue_abort_iotag(9),lpfc_sli_hba_iocb_abort(9),lpfc_sli_validate_fcp_iocb_for_abort(9),lpfc_sli_validate_fcp_iocb(9)lpfc_sli_sum_iocb(9),lpfc_sli_abort_fcp_cmpl(9),lpfc_sli_abort_iocb(9),lpfc_sli_abort_taskmgmt(9),lpfc_sli_wake_iocb_wait(9)lpfc_chk_iocb_flg(9),lpfc_sli_issue_iocb_wait(9),lpfc_sli_issue_mbox_wait(9),lpfc_sli_mbox_sys_shutdown(9),lpfc_sli_eratt_read(9)lpfc_sli4_eratt_read(9),lpfc_sli_check_eratt(9),lpfc_intr_state_check(9),lpfc_sli_sp_intr_handler(9),lpfc_sli_fp_intr_handler(9)lpfc_sli_intr_handler(9),lpfc_sli4_els_xri_abort_event_proc(9),lpfc_sli4_els_preprocess_rspiocbq(9),lpfc_sli4_sp_handle_async_event(9),lpfc_sli4_sp_handle_mbox_event(9)lpfc_sli4_sp_handle_mcqe(9),lpfc_sli4_sp_handle_els_wcqe(9),lpfc_sli4_sp_handle_rel_wcqe(9),lpfc_sli4_sp_handle_abort_xri_wcqe(9),lpfc_sli4_sp_handle_rcqe(9)lpfc_sli4_sp_handle_cqe(9),lpfc_sli4_sp_handle_eqe(9),__lpfc_sli4_process_cq(9),__lpfc_sli4_sp_process_cq(9),lpfc_sli4_sp_process_cq(9)lpfc_sli4_dly_sp_process_cq(9),lpfc_sli4_fp_handle_fcp_wcqe(9),lpfc_sli4_fp_handle_rel_wcqe(9),lpfc_sli4_nvmet_handle_rcqe(9),lpfc_sli4_fp_handle_cqe(9)__lpfc_sli4_hba_process_cq(9),lpfc_sli4_hba_process_cq(9),lpfc_sli4_hba_handle_eqe(9),lpfc_sli4_dly_hba_process_cq(9),lpfc_sli4_hba_intr_handler(9)lpfc_sli4_intr_handler(9),lpfc_sli4_queue_free(9),lpfc_sli4_queue_alloc(9),lpfc_dual_chute_pci_bar_map(9),lpfc_modify_hba_eq_delay(9)lpfc_eq_create(9),lpfc_sli4_hba_intr_handler_th(9),lpfc_cq_create(9),lpfc_cq_create_set(9),lpfc_mq_create_fb_init(9)lpfc_mq_create(9),lpfc_wq_create(9),lpfc_rq_create(9),lpfc_mrq_create(9),lpfc_eq_destroy(9)lpfc_cq_destroy(9),lpfc_mq_destroy(9),lpfc_wq_destroy(9),lpfc_rq_destroy(9),lpfc_sli4_post_sgl(9)lpfc_sli4_alloc_xri(9),__lpfc_sli4_free_xri(9),lpfc_sli4_free_xri(9),lpfc_sli4_next_xritag(9),lpfc_sli4_post_sgl_list(9)lpfc_sli4_post_io_sgl_block(9),lpfc_sli4_post_io_sgl_list(9),lpfc_fc_frame_check(9),lpfc_fc_hdr_get_vfi(9),lpfc_fc_frame_to_vport(9)lpfc_update_rcv_time_stamp(9),lpfc_cleanup_rcv_buffers(9),lpfc_rcv_seq_check_edtov(9),lpfc_fc_frame_add(9),lpfc_sli4_abort_partial_seq(9)lpfc_sli4_abort_ulp_seq(9),lpfc_sli4_seq_abort_rsp_cmpl(9),lpfc_sli4_xri_inrange(9),lpfc_sli4_seq_abort_rsp(9),lpfc_sli4_handle_unsol_abort(9)lpfc_seq_complete(9),lpfc_prep_seq(9),lpfc_sli4_handle_received_buffer(9),lpfc_sli4_post_all_rpi_hdrs(9),lpfc_sli4_post_rpi_hdr(9)lpfc_sli4_alloc_rpi(9),__lpfc_sli4_free_rpi(9),lpfc_sli4_free_rpi(9),lpfc_sli4_remove_rpis(9),lpfc_sli4_resume_rpi(9)lpfc_sli4_init_vpi(9),lpfc_mbx_cmpl_add_fcf_record(9),lpfc_sli4_add_fcf_record(9),lpfc_sli4_build_dflt_fcf_record(9),lpfc_sli4_fcf_scan_read_fcf_rec(9)lpfc_sli4_fcf_rr_read_fcf_rec(9),lpfc_sli4_read_fcf_rec(9),lpfc_check_next_fcf_pri_level(9),lpfc_sli4_fcf_rr_next_index_get(9),lpfc_sli4_fcf_rr_index_set(9)lpfc_sli4_fcf_rr_index_clear(9),lpfc_mbx_cmpl_redisc_fcf_table(9),lpfc_sli4_redisc_fcf_table(9),lpfc_sli4_fcf_dead_failthrough(9),lpfc_sli_get_config_region23(9)lpfc_sli4_get_config_region23(9),lpfc_sli_read_link_ste(9),lpfc_log_fw_write_cmpl(9),lpfc_wr_object(9),lpfc_cleanup_pending_mbox(9)lpfc_drain_txq(9),lpfc_wqe_bpl2sgl(9),lpfc_sli4_issue_wqe(9),lpfc_sli4_issue_abort_iotag(9),lpfc_snapshot_mxp(9)lpfc_adjust_pvt_pool_count(9),lpfc_adjust_high_watermark(9),lpfc_move_xri_pvt_to_pbl(9),_lpfc_move_xri_pbl_to_pvt(9),lpfc_move_xri_pbl_to_pvt(9)lpfc_keep_pvt_pool_above_lowwm(9),lpfc_release_io_buf(9),lpfc_get_io_buf_from_private_pool(9),lpfc_get_io_buf_from_expedite_pool(9),lpfc_get_io_buf_from_multixri_pools(9)lpfc_get_io_buf(9),lpfc_read_object(9),lpfc_get_sgl_per_hdwq(9),lpfc_put_sgl_per_hdwq(9),lpfc_free_sgl_per_hdwq(9)lpfc_get_cmd_rsp_buf_per_hdwq(9),lpfc_put_cmd_rsp_buf_per_hdwq(9),lpfc_free_cmd_rsp_buf_per_hdwq(9),lpfc_sli_prep_wqe(9)
yes, that's all of them. every single one. i counted (i did not count) π but nothing got left behind, promise π
and that's the whole page, bestie β written up in ./drivers/scsi/lpfc, dated October 2026, and it's lpfc_sli_api_table_setup(9) all the way down β go set up that jump table, you absolute icon, the kernel believes in you ππ
π¦ 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