diag_cmd_data_free(9)
π diag_cmd_data_free(9) β from the Kernel API Manual, bestie π
okay so picture this: you're deep in lpfc land, and something's gotta get cleaned up. That's the whole vibe of this page. Welcome to the Kernel API Manual, function number 9 in the section, and honestly? She's a little legend. π«Ά
β¨ NAME β¨
diag_cmd_data_free β literally just frees an lpfc dma buffer extension. That's it. That's the whole job. No cap. π
πΈ SYNOPSIS πΈ
int diag_cmd_data_free (struct lpfc_hba *phba , struct lpfc_dmabufext
*mlist );
ok so real talk, the signature got line-wrapped in the original and we're keeping it exactly as-is because β¨ fidelity β¨. It returns an int, it takes two pointers, and yes, one of them is named mlist and the other is named phba. Iconic naming choices honestly. π
π¦ ARGUMENTS π¦
phbaβ pointer to the HBA context object. Like, the whole adapter's context. She's the main character here, everything comes back to her. πmlistβ pointer to anlpfcdma buffer extension. The thing that's about to get freed. Say your goodbyes bestie. π
ngl both of these are just pointers, but they're important pointers. Don't be out here passing random garbage, fr fr. π
π SEE ALSO π
ok this list is LONG and I respect it deeply. Every single one of these, present and accounted for, no skipping, no summarizing, we don't do that here. π
First up, the source file itself, because reading the code is self-care:
Kernel file ./drivers/scsi/lpfc/lpfc_bsg.c
and now the rest, all in (9) section glory, in the exact order the original gave them:
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)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)(the sibling omg π₯Ί),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_check_cmd_access(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)
that's all of them. every last one. iykyk. π₯
π the cute sign-off π
this whole little masterpiece lives down in ./drivers/scsi/lpfc, it's dated October 2026, and it's filed under diag_cmd_data_free(9). go free those dma buffer extensions responsibly bestie, mwah πβ¨πΈ
π¦ 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