lpfc_adjust_high_watermark(9)
π lpfc_adjust_high_watermark(9) β Kernel API Manual β¨
okay so bestie, welcome to the Kernel API Manual entry for lpfc_adjust_high_watermark. it's a whole vibe. short function, big responsibilities. let's get into it π«Ά
π NAME π
lpfc_adjust_high_watermark β Adjust high watermark
like, it adjusts the high watermark. that's the whole thing. iconic brevity honestly π
β¨ SYNOPSIS β¨
void lpfc_adjust_high_watermark (struct lpfc_hba *phba , u32 hwqid );
returns nothing, takes two things. no notes. πΈ
π¦ ARGUMENTS π¦
phbaβ pointer to lpfc hba data structure. like, the whole HBA's whole personality, passed by reference bestie π«Άhwqidβ belong to which HWQ. that's the hardware queue we're talking about, in case there was any doubt β¨
π DESCRIPTION π
so this routine sets the high watermark as the number of outstanding XRIs β but (and this is the important part, don't skip it) it makes sure the new value lands between xri_limit/2 and xri_limit. no cap. it will not let the number escape that range. it's giving responsible. it's giving boundaries. we love to see it π
π SEE ALSO π
Kernel file ./drivers/scsi/lpfc/lpfc_sli.c β and honestly? the whole friend group showed up. every single one of these is invited to the function party π
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_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_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)
that's the whole list, bestie β no skips, no "etc." i would never π«Ά
anyway that's the page!! written from the ./drivers/scsi/lpfc source tree, dated October 2026, and it's the lpfc_adjust_high_watermark(9) page π thanks for reading, ily, go set a watermark that's actually between xri_limit/2 and xri_limit ok bye π
β¨π
π¦ 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