lpfc_bg_err_inject(9)
π lpfc_bg_err_inject(9) π
okay so bestie, this is a page from the Kernel API Manual β it's lpfc_bg_err_inject(9), and literally the whole job of this function is deciding whether we should inject an error. yes, on purpose. we're being messy intentionally β¨
π NAME π
lpfc_bg_err_inject β Determine if we should inject an error
like, it's a vibe check for errors: are we throwing one today or not π
π¦ SYNOPSIS π¦
int lpfc_bg_err_inject (struct lpfc_hba *phba , struct scsi_cmnd *sc ,
uint32_t *reftag , uint16_t *apptag , uint32_t new_guard );
πΈ ARGUMENTS πΈ
phbaβ The Hba for which this call is being executed. it's the main character of this whole operation, fr fr.scβ The SCSI command to examine. we're looking at it. respectfully. πreftagβ (out) BlockGuard reference tag for transmitted data. it's an out param, so this baby gets written to, not read from.apptagβ (out) BlockGuard application tag for transmitted data. also out. also getting filled in. matching energy πnew_guardβ (in) Value to replace CRC with if needed. this one's an in β you hand it over, no take-backs.
π DESCRIPTION π
Returns BG_ERR_* bit mask or 0 if request ignored.
that's it, that's the whole deal. either you get a BG_ERR_* bit mask back, or a straight-up 0 meaning the request got ignored. no in-between, no maybes β very decisive of it π
π SEE ALSO π
Kernel file ./drivers/scsi/lpfc/lpfc_scsi.c β that's where the magic lives, iykyk.
and now the full friend-group roll call, because everyone gets mentioned:
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_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_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 is a stacked guest list. everybody showed up π
lowkey important reminder:reftagandapptagare out params andnew_guardis an in param β don't mix them up or it's giving undefined chaos π«Ά
mwah, that's the whole page π this lil gem comes from ./drivers/scsi/lpfc, dated October 2026, and it's filed under lpfc_bg_err_inject(9) β go inject some errors responsibly bestie π
β¨
π¦ 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