lpfc_scsi_prep_dma_buf_s4(9)
π
lpfc_scsi_prep_dma_buf_s4 β a Kernel API Manual moment
okay so bestie, welcome to the Kernel API Manual, section 9, and today's main character is lpfc_scsi_prep_dma_buf_s4. yes that's a whole mouthful, we're gonna get through it together π«Ά
β¨ NAME β¨
lpfc_scsi_prep_dma_buf_s4 β DMA mapping for scsi buffer to SLI4 IF spec
like, that's the whole vibe. it maps a scsi buffer's DMA situation to the SLI-4 interface spec. no cap. π
πΈ SYNOPSIS πΈ
int lpfc_scsi_prep_dma_buf_s4 (struct lpfc_hba *phba , struct
lpfc_io_buf *lpfc_cmd );
it returns an int, it takes two pointers, and it's giving "small function, big responsibilities" energy fr fr β¨
π ARGUMENTS π
phbaβ The Hba for which this call is being executed. that's your host bus adapter, the whole reason we're here πlpfc_cmdβ The scsi buffer which is going to be mapped. this is the little guy getting the DMA glow-up π¦
π DESCRIPTION π
so what does this routine actually do, you ask? okay so β it does the pci DMA mapping for the scatter-gather list of the scsi cmnd field of lpfc_cmd, and it does that for a device with the SLI-4 interface spec. that's it. that's the whole job. iconic behavior honestly π
Return codes, and listen, these matter, do not skip them:
2β Error β Do not retry1β Error β Retry0β Success
β οΈ okay bestie real talk, pay attention to that2β it literally says do not retry. do not be out here retrying a2. that's not the vibe. π
π§ SEE ALSO π§
Kernel file ./drivers/scsi/lpfc/lpfc_scsi.c β the source, the origin story, the mothership π
and now, the roll call. every single one of these. we don't leave a single reference behind, not on my watch π«Ά
lpfc_sli4_set_rsp_sgl_last(9)lpfc_rampdown_queue_depth(9)lpfc_ramp_down_queue_handler(9)lpfc_scsi_dev_block(9)lpfc_new_scsi_buf_s3(9)lpfc_sli4_vport_delete_fcp_xri_aborted(9)lpfc_sli4_io_xri_aborted(9)lpfc_get_scsi_buf_s3(9)lpfc_get_scsi_buf_s4(9)lpfc_get_scsi_buf(9)lpfc_release_scsi_buf_s3(9)lpfc_release_scsi_buf_s4(9)lpfc_release_scsi_buf(9)lpfc_fcpcmd_to_iocb(9)lpfc_scsi_prep_dma_buf_s3(9)lpfc_bg_err_inject(9)lpfc_sc_to_bg_opcodes(9)lpfc_bg_err_opcodes(9)lpfc_bg_setup_bpl(9)lpfc_bg_setup_bpl_prot(9)lpfc_bg_setup_sgl(9)lpfc_bg_setup_sgl_prot(9)lpfc_prot_group_type(9)lpfc_bg_scsi_adjust_dl(9)lpfc_bg_scsi_prep_dma_buf_s3(9)lpfc_bg_scsi_prep_dma_buf_s4(9)lpfc_scsi_prep_dma_buf(9)lpfc_bg_scsi_prep_dma_buf(9)lpfc_scsi_prep_cmnd_buf(9)lpfc_send_scsi_error_event(9)lpfc_scsi_unprep_dma_buf(9)lpfc_unblock_requests(9)lpfc_block_requests(9)lpfc_update_cmf_cmpl(9)lpfc_update_cmf_cmd(9)lpfc_handle_fcp_err(9)lpfc_fcp_io_cmd_wqe_cmpl(9)lpfc_scsi_cmd_iocb_cmpl(9)lpfc_scsi_prep_cmnd_buf_s3(9)lpfc_scsi_prep_cmnd_buf_s4(9)lpfc_scsi_prep_cmnd(9)lpfc_scsi_prep_task_mgmt_cmd_s3(9)lpfc_scsi_prep_task_mgmt_cmd_s4(9)lpfc_scsi_api_table_setup(9)lpfc_tskmgmt_def_cmpl(9)lpfc_check_pci_resettable(9)lpfc_info(9)lpfc_poll_rearm_timer(9)lpfc_poll_start_timer(9)lpfc_poll_timeout(9)lpfc_queuecommand(9)lpfc_abort_handler(9)lpfc_check_fcp_rsp(9)lpfc_send_taskmgmt(9)lpfc_chk_tgt_mapped(9)lpfc_reset_flush_io_context(9)lpfc_device_reset_handler(9)lpfc_target_reset_handler(9)lpfc_host_reset_handler(9)lpfc_sdev_init(9)lpfc_sdev_configure(9)lpfc_sdev_destroy(9)lpfc_create_device_data(9)lpfc_delete_device_data(9)__lpfc_get_device_data(9)lpfc_find_next_oas_lun(9)lpfc_enable_oas_lun(9)lpfc_disable_oas_lun(9)
like, that's the whole friend group. every one of them showed up to the party π
okay that's the page!! sourced straight from ./drivers/scsi/lpfc, dated October 2026 β so yeah, she's a little futuristic, we don't question it π go map some DMA bestie, you got this π¦β¨
π¦ 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