lpfc_sli_hbqbuf_fill_hbqs(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– lpfc_sli_hbqbuf_fill_hbqs πŸ’–

okay so bestie, we're in the Kernel API Manual today and this page is about lpfc_sli_hbqbuf_fill_hbqs(9) β€” yes that's a mouthful, no I will not be pronouncing it out loud. it's giving "driver internals" and honestly? we love her for it. ✨


πŸŽ€ NAME πŸŽ€

lpfc_sli_hbqbuf_fill_hbqs β€” post more hbq buffers to HBQ. that's the whole vibe. more buffers, into the HBQ. slay.


🌸 SYNOPSIS 🌸

int lpfc_sli_hbqbuf_fill_hbqs (struct lpfc_hba *phba , uint32_t hbqno ,
uint32_t count );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • phba β€” pointer to the HBA context object. your whole world lives in here tbh.
  • hbqno β€” the HBQ number. which queue are we feeding, bestie?
  • count β€” how many HBQ buffers you wanna post. the number. the amount. the quantity. πŸ’…

✨ DESCRIPTION ✨

so this function gets called with no lock held β€” like, zero locks, none, we're free πŸ’€ β€” and its whole job is to post more hbq buffers to the given HBQ.

and then it tells you how it went: the function returns the number of HBQ buffers successfully posted. no cap, that's the return value. if you posted some but not all, you get the number that actually made it. main character behavior fr fr.


πŸ‘‘ SEE ALSO πŸ‘‘

this list is iconic and also lowkey endless, so buckle up buttercup 🌈

kernel file ./drivers/scsi/lpfc/lpfc_sli.c, plus:

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_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), 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)


okay that's the whole page bestie, you ate that πŸ’…βœ¨

and for the cute lil sign-off: this one lives in ./drivers/scsi/lpfc, dated October 2026 β€” which is, like, so far ahead it's basically time travel, and honestly? iconic. πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from