lpfc_sli_def_mbox_cmpl(9)
π lpfc_sli_def_mbox_cmpl(9) β like, the Kernel API Manual page you didn't know you needed π
okay so bestie, welcome to the Kernel API Manual entry for lpfc_sli_def_mbox_cmpl(9) β yes the whole name, we don't shorten it, that's her government name π. She's a little function in the lpfc driver and honestly? she's the default for a reason. main character energy, no cap β¨
β¨ NAME β¨
lpfc_sli_def_mbox_cmpl β the Default mailbox completion handler. that's it, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
void lpfc_sli_def_mbox_cmpl (struct lpfc_hba *phba , LPFC_MBOXQ_t *pmb
);
look at her signature, so clean, so iconic π
π ARGUMENTS π
phbaβ Pointer to HBA context object. your whole adapter lives in there, she needs the receipts π«Άpmbβ Pointer to mailbox object. the mailbox command that just wrapped up, hand her the mail fr fr π
π¦ DESCRIPTION π¦
okay so picture this: a mailbox command has just finished doing its little thing, and somebody has to clean up after it. that somebody is her π
This function is the default mailbox completion handler. It frees the memory resources associated with the completed mailbox command. yes bestie, she does the freeing, that's her whole job, and she does it slayfully π§Ήβ¨
and here's the plot twist π β if the completed command is a REG_LOGIN mailbox command, this function will issue a UREG_LOGIN to re-claim the RPI. so she's not just cleaning up, she's protecting her turf, and honestly the RPI reclaim is giving protective bestie ππ₯
π SEE ALSO π
bestie. sit down. grab a snack π. this list is long and every single one of these is part of the family, so ngl I'm giving you all of them, exactly as they're written, no skipping, no vibes-based editing π€π
the Kernel file lives at ./drivers/scsi/lpfc/lpfc_sli.c, and here are all the siblings, cousins and second-cousins π:
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_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)
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)
likeβ¦ that's 299 of them and I typed every single one, so you know I care about you π«Άπ (also note the sneaky _lpfc_move_xri_pbl_to_pvt(9) with one underscore vs lpfc_move_xri_pbl_to_pvt(9) with none β yes they're different functions, don't @ me, they're both valid πβ¨)
π‘ friendly reminder bestie: every name above is copied exactly, character for character. don't go "fixing" the underscores, that's how you end up crying at 2am π
and that's the page!! π this little cutie lives in ./drivers/scsi/lpfc, she's dated October 2026, and she answers to lpfc_sli_def_mbox_cmpl(9) β so go forth, free your mailbox memory, reclaim those RPIs, and slay π
πβ¨ periodt π¦
π¦ 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