lpfc_scsi_prep_cmnd(9)
okay bestie, we're diving into the Kernel API Manual for lpfc_scsi_prep_cmnd(9). This one's all about converting SCSI commands to FCP info units, and it's giving major driver energy. Let's get into it π
β¨
β¨ NAME β¨
lpfc_scsi_prep_cmnd β the wrapper function that converts a SCSI command to an FCP info unit, fr fr.
πΈ SYNOPSIS πΈ
int lpfc_scsi_prep_cmnd (struct lpfc_vport *vport , struct lpfc_io_buf
*lpfc_cmd , struct lpfc_nodelist *pnode );
π ARGUMENTS π
vportβ The virtual port for which this call is being executed. It's the main character that tells you which virtual port you're on, iykyk.lpfc_cmdβ The SCSI command which needs to send. Basically the message you're trying to slide into the device's DMs.pnodeβ Pointer tolpfc_nodelist. It's a pointer, bestie, so handle with care.
π DESCRIPTION π
This routine is literally obsessed with initializing fcp_cmnd and iocb data structures from the SCSI command, so it can transfer to a device with SLI3 interface spec. No cap, that's the whole vibe.
Heads up bestie: this is specifically for devices with SLI3 interface spec. If you're on SLI4, this function is not the one, okay? Don't come for me π
π₯ SEE ALSO π₯
okay so this is a whole group chat of related functions and files. We do not skip details in this house, so here's the entire list, periodt π
- Kernel file
./drivers/scsi/lpfc/lpfc_scsi.c 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_scsi_prep_dma_buf_s4(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_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)
This page was brought to you by the source/version at ./drivers/scsi/lpfc and the date October 2026. Stay slay, bestie, and remember: FCP info units are your friend π«Άπ
π¦ 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