__lpfc_nvme_ls_req(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– __lpfc_nvme_ls_req πŸ’–

okay so you're reading a page from the Kernel API Manual, bestie β€” specifically the one for __lpfc_nvme_ls_req(9), and honestly? she's a whole vibe. let's get into it 🫢


✨ NAME ✨

__lpfc_nvme_ls_req β€” the generic service routine that issues an NVME LS request. that's it, that's the whole gig πŸ’…


🌸 SYNOPSIS 🌸

int __lpfc_nvme_ls_req (struct lpfc_vport *vport , struct lpfc_nodelist
*ndlp , struct nvmefc_ls_req *pnvme_lsreq , void (*gen_req_cmp)(struct
lpfc_hba *phba, struct lpfc_iocbq *cmdwqe, struct lpfc_iocbq *rspwqe) );

like, yes, she takes four arguments and one of them is a whole function pointer. main character energy fr fr πŸ‘‘


πŸŽ€ ARGUMENTS πŸŽ€

  • vport β€” the local port that's doing the issuing. she's the one sending the LS out into the world πŸ’Œ
  • ndlp β€” the remote port we're sending the LS to. the recipient, the addressee, the pen pal 🌈
  • pnvme_lsreq β€” pointer to the LS request structure, handed over by the transport. so not her struct, she's just holding it for a friend 🫢
  • gen_req_cmp β€” the completion call-back. the "hey bestie we're done" function, iykyk ⭐

πŸ¦‹ DESCRIPTION πŸ¦‹

so what does she actually do? glad you asked πŸ’–

the routine validates the ndlp, builds buffers, and sends a GEN_REQUEST WQE so the LS operation can actually happen. no cap, that's the whole flow β€” validate, build, send. iconic honestly ✨

Return value : 0 means Success. anything non-zero is various error codes, and they show up in the form of -Exxx. so like, if you get a zero, slay πŸŽ‰. if you get a -Exxx, that's your vibe check telling you something went sideways 😭


πŸ’œ SEE ALSO πŸ’œ

Kernel file ./drivers/scsi/lpfc/lpfc_nvme.c β€” go look, she's right there πŸ”₯

that's twenty of them. twenty!! a whole friend group 🧚


ngl, if you're deep in the lpfc NVMe code path at 2am, this page is your emotional support manpage. drink some water πŸ’§

kisses from ./drivers/scsi/lpfc, dated October 2026, and this little corner of the Kernel API Manual is officially closed β€” __lpfc_nvme_ls_req(9) out πŸ’…πŸŽ€πŸ’–

πŸ“¦ where this page comes from