lpfc_bsg_check_cmd_access(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… lpfc_bsg_check_cmd_access β€” kernel API manual energy ✨

okay so bestie, we're in the Kernel API Manual today and this one is a little gatekeeper function, no cap. Let's get into it πŸŽ€


✨ NAME ✨

lpfc_bsg_check_cmd_access β€” test for a supported mailbox command πŸ¦‹


🌸 SYNOPSIS 🌸

int lpfc_bsg_check_cmd_access (struct lpfc_hba *phba , MAILBOX_t *mb ,
struct lpfc_vport *vport );

like yes, that's the whole signature, copy it exactly, periodt πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • phba β€” a pointer to the HBA context object. your whole adapter's main character energy lives in there πŸ‘‘
  • mb β€” a pointer to a mailbox object. the actual mailbox, not your inbox, sorry 😭
  • vport β€” a pointer to a vport object. the virtual port said hi 🫢

πŸ”₯ DESCRIPTION πŸ”₯

so here's the vibe check this function is doing: some commands are highkey picky and require the port to be offline before they'll even consider it πŸ™ˆ and some commands may not be called from the application β€” like, that door is just not for you, bestie πŸ’€

that's the whole test. it's giving bouncer at the club checking your name on the list 🌈


πŸ’– SEE ALSO πŸ’–

first of all, the source lives in the kernel file ./drivers/scsi/lpfc/lpfc_bsg.c β€” that's the home base, iykyk πŸ“

and now the whole friend group, literally all of them, no one left out:

lpfc_bsg_send_mgmt_cmd_cmp(9), lpfc_bsg_send_mgmt_cmd(9), lpfc_bsg_rport_els_cmp(9), lpfc_bsg_rport_els(9), lpfc_bsg_event_free(9), lpfc_bsg_event_ref(9), lpfc_bsg_event_unref(9), lpfc_bsg_event_new(9), diag_cmd_data_free(9), lpfc_bsg_ct_unsol_abort(9), lpfc_bsg_hba_set_event(9), lpfc_bsg_hba_get_event(9), lpfc_issue_ct_rsp_cmp(9), lpfc_issue_ct_rsp(9), lpfc_bsg_send_mgmt_rsp(9), lpfc_bsg_diag_mode_enter(9), lpfc_bsg_diag_mode_exit(9), lpfc_sli3_bsg_diag_loopback_mode(9), lpfc_sli4_bsg_set_link_diag_state(9), lpfc_sli4_bsg_set_loopback_mode(9), lpfc_sli4_diag_fcport_reg_setup(9), lpfc_sli4_bsg_diag_loopback_mode(9), lpfc_bsg_diag_loopback_mode(9), lpfc_sli4_bsg_diag_mode_end(9), lpfc_sli4_bsg_link_diag_test(9), lpfcdiag_loop_self_reg(9), lpfcdiag_loop_self_unreg(9), lpfcdiag_loop_get_xri(9), lpfc_bsg_dma_page_alloc(9), lpfc_bsg_dma_page_free(9), lpfc_bsg_dma_page_list_free(9), diag_cmd_data_alloc(9), lpfcdiag_sli3_loop_post_rxbufs(9), lpfc_bsg_diag_loopback_run(9), lpfc_bsg_get_dfc_rev(9), lpfc_bsg_issue_mbox_cmpl(9), lpfc_bsg_mbox_ext_session_reset(9), lpfc_rd_obj_emb0_handle_job(9), lpfc_bsg_issue_mbox_ext_handle_job(9), lpfc_bsg_issue_read_mbox_ext_cmpl(9), lpfc_bsg_issue_write_mbox_ext_cmpl(9), lpfc_bsg_sli_cfg_read_cmd_ext(9), lpfc_bsg_sli_cfg_write_cmd_ext(9), lpfc_bsg_handle_sli_cfg_mbox(9), lpfc_bsg_mbox_ext_abort(9), lpfc_bsg_read_ebuf_get(9), lpfc_bsg_write_ebuf_set(9), lpfc_bsg_handle_sli_cfg_ebuf(9), lpfc_bsg_handle_sli_cfg_ext(9), lpfc_bsg_issue_mbox(9), lpfc_bsg_mbox_cmd(9), lpfc_check_fwlog_support(9), lpfc_bsg_get_ras_config(9), lpfc_bsg_set_ras_config(9), lpfc_bsg_get_ras_lwpd(9), lpfc_bsg_get_ras_fwlog(9), lpfc_bsg_hst_vendor(9), lpfc_bsg_request(9), lpfc_bsg_timeout(9)


and that's the page, bestie 🧚 source is ./drivers/scsi/lpfc, dated October 2026 β€” go read the other fifty-seven man pages, I believe in you πŸ“πŸ’œ

πŸ“¦ where this page comes from