nvmet_fc_reg...r_targetport(9)
π NAME π
nvmet_fc_register_targetport β the transport entry point that an LLDD calls to register that a local NVME subsystem FC port exists π
this is the "hey bestie, I'm here, I'm a port, pls acknowledge me" moment, and it lives in the Kernel API Manual π
β¨ SYNOPSIS β¨
int nvmet_fc_register_targetport (struct nvmet_fc_port_info *pinfo ,
struct nvmet_fc_target_template *template , struct device *dev , struct
nvmet_fc_target_port **portptr );
π¦ ARGUMENTS π¦
pinfoβ pointer to info about the port you're registering. literally the port's little ID card πͺͺtemplateβ the LLDD entrypoints and the operational parameters for the port. this is where you hand over all the callbacks, no cap π₯devβ the physical hardware device node that this port corresponds to. it's gonna be used for DMA mappings, so likeβ¦ it matters, okay? πportptrβ pointer to a local port pointer π here's the tea: on success, the routine allocates anvme_fc_local_portstructure and drops its address into the local port pointer. on failure, that local port pointer gets set toNULLπ«Ά
πΈ RETURN πΈ
a completion status, bestie π it must be 0 on success, and a negative errno (ex: -ENXIO) on failure. zero = slay, negative = the vibe check failed π
π SEE ALSO π
- Kernel file
./drivers/nvme/target/fc.c nvmet_fc_invalidate_host(9)nvmet_fc_unregister_targetport(9)nvmet_fc_rcv_ls_req(9)nvmet_fc_rcv_fcp_req(9)nvmet_fc_rcv_fcp_abort(9)
ok that's the whole page, go register ur port and be iconic about it ππ
shoutout to ./drivers/nvme/target for being the home base, October 2026 for the timestamp, and the Kernel API Manual for hosting this whole moment π§π
π¦ 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