lpfc_nvmet_handle_lsreq(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… lpfc_nvmet_handle_lsreq β€” like, the NVME LS request handler bestie

Okay so this is a page from the Kernel API Manual (section 9, kernel funcs, iykyk) and it's all about one lil function: lpfc_nvmet_handle_lsreq. Let's get into it ✨


✨ NAME ✨

lpfc_nvmet_handle_lsreq β€” Process an NVME LS request πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

int lpfc_nvmet_handle_lsreq (struct lpfc_hba *phba , struct
lpfc_async_xchg_ctx *axchg );

🌸 ARGUMENTS 🌸

  • phba β€” pointer to lpfc hba data structure. ur classic hba pointer, no notes πŸ’…
  • axchg β€” pointer to exchange context for the NVME LS request 🌈

πŸ‘‘ DESCRIPTION πŸ‘‘

So this routine is literally the moment an NVME LS request arrives asynchronously and needs to be dealt with. The routine does any remaining validation, and then the LS gets forwarded to the nvmet-fc transport via nvmet_fc_rcv_ls_req. Slay.

The calling sequence should be, fr fr:

nvmet_fc_rcv_ls_req -> (processing) ->
lpfc_nvmet_xmt_ls_rsp/cmp -> req->done.

And lpfc_nvme_xmt_ls_rsp_cmp should free the allocated axchg. Not me reminding you to free ur stuff 😭

Returns 0 if the LS was handled and delivered to the transport. Returns 1 if the LS failed to be handled and should be dropped. Two outcomes, both iconic πŸ’€


⭐ SEE ALSO ⭐

Kernel file ./drivers/scsi/lpfc/lpfc_nvmet.c β€” the main character file itself 🫢


That's the whole vibe, bestie β€” go read the source, it's giving main character energy πŸ§šπŸ’–

Signed off from ./drivers/scsi/lpfc, running Kernel API Manual flavor, dated October 2026 β€” catch u in the group chat πŸ’œπŸ‘‘

πŸ“¦ where this page comes from