lpfc_sli4_wq_release(9)
π NAME π
okay bestie, welcome to the lpfc_sli4_wq_release(9) page from the Kernel API Manual β it's lowkey a tiny but crucial helper. lpfc_sli4_wq_release β updates the internal hba index for a WQ. That's the whole serve. π
β¨ SYNOPSIS β¨
void lpfc_sli4_wq_release (struct lpfc_queue *q , uint32_t index );
π ARGUMENTS π
qβ the Work Queue to operate on. This is the queue you're doing the thing to.indexβ the index to advance the hba index to. Yes bestie, it's literally that.
π¦ DESCRIPTION π¦
okay so here's the plot: this routine updates a queue's HBA index to reflect that Work Queue Entries have been consumed by the HBA. Once the HBA indicates it has consumed an entry, the host calls this function to update the queue's internal pointers. That's the whole routine β no extra lore. β¨
π SEE ALSO π
the kernel file is ./drivers/scsi/lpfc/lpfc_sli.c, and the see-also roll call is huge β buckle up, bestie. Every one of these references is here:
lpfc_sli4_pcimem_bcopy(9), lpfc_sli4_wq_put(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_sli_api_table_setup(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),
and we're still rolling: 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),
and the rest of the see-also squad: 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)
mwah π β this page lives under ./drivers/scsi/lpfc, is dated October 2026, and signs off as lpfc_sli4_wq_release(9). Bye bestie, go update those internal pointers! π«Ά
π¦ 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