STRUCT FC_BSG_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct fc_bsg_info(9) β€” Kernel API Manual, but make it cute πŸŽ€

okay so bestie. this is a page from the Kernel API Manual and it's literally all about struct fc_bsg_info. yes the name is giving "what does that even mean" but stay with me, it's shorter than it looks and you're gonna slay it ✨


✨ NAME ✨

struct fc_bsg_info β€” the FC Passthrough managemet structure πŸ’– (that's the official title, typo and all, no cap β€” I'm not touching it, it's iconic)


🌸 SYNOPSIS 🌸

struct fc_bsg_info {
    struct bsg_job *job;
    struct fc_lport *lport;
    u16 rsp_code;
    struct scatterlist *sg;
    u32 nents;
    size_t offset;
 };

six fields. that's it. that's the whole struct. she's compact and she knows it 🫢


πŸ¦‹ Members πŸ¦‹

let's go field by field, main character by main character:

  • job β€” the passthrough job. like, the whole reason we're here πŸ’…
  • lport β€” the local port you're passing a command through. your little doorway 🌸
  • rsp_code β€” the expected response code. what we think is coming back πŸ‘€
  • sg β€” literally job->reply_payload.sg_list. that's the whole description. she points at the scatterlist ✨
  • nents β€” job->reply_payload.sg_cnt. the count. how many of those entries we're dealing with πŸ”’
  • offset β€” the offset into the response data. the little scoot-in distance into the buffer πŸŽ€

🌈 SEE ALSO 🌈

⭐ sidebar: this all lives in the Kernel file ./drivers/scsi/libfc/fc_lport.c β€” that's the source of truth, bestie 🫢

and now the guest list. it's long. it's a whole group chat. but every single one is invited, so here we go:

fifty-two entries. yes I counted. yes I have no plans for my evening πŸ’€


and that's the whole page, bestie β€” you ate that πŸ’…βœ¨

🌸 source is ./drivers/scsi/libfc, dated October 2026, and the whole thing is filed under struct fc_bsg_info(9). mwah, go read fc_lport.c πŸŽ€πŸ’–πŸ¦‹
πŸ“¦ where this page comes from