create_pbc(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… create_pbc(9) β€” like, the whole glow-up

okay so bestie, welcome to create_pbc(9), straight out of the Kernel API Manual ✨ this is the page where we build a PBC for transmission, and honestly? iconic behavior. let's get into it πŸŽ€


✨ SYNOPSIS ✨

u64 create_pbc (struct hfi1_pportdata *ppd , u64 flags , int srate_mbs ,
u32 vl , u32 dw_len );

like, that's the whole signature, no cap 🫢


🌸 ARGUMENTS 🌸

  • ppd β€” info of physical Hfi port πŸ’– like the little ID card for the hardware port
  • flags β€” special case flags or-ed in built pbc πŸ”₯ you're OR-ing these bad boys right into the PBC
  • srate_mbs β€” static rate ⭐
  • vl β€” vl πŸ‘‘ (yes, that's the whole description, and honestly? respect for the brevity)
  • dw_len β€” dword length (header words + data words + pbc words) πŸ¦‹ so it's the full dword count, all three chunks added up, not just one of them, iykyk

πŸ’œ DESCRIPTION πŸ’œ

Create a PBC with the given flags, rate, VL, and length. periodt. that's the vibe β€” you hand it the flags, the rate, the VL, and the length, and it builds you a PBC 🌈


πŸ™ˆ NOTE πŸ™ˆ

ok so this is the important bit, don't skip it bestie 😭 the PBC created will not insert any HCRC β€” all callers but one are for verbs, which does not use this PSM feature. the lone other caller is for the diagnostic interface, which calls this if the user does not supply their own PBC. so like... no HCRC, fr fr. one (1) exception to the verbs-only situation, and it's the diagnostics one 🩷

🧚 SEE ALSO 🧚

Kernel file ./drivers/infiniband/hw/hfi1/chip.c β€” go read it, it's giving main character energy πŸ‘‘

and the whole friend group πŸ’…:


πŸŽ€ sign-off πŸŽ€

this masterpiece lives in ./drivers/infiniband/hw/hfi1 and it's dated October 2026 β€” slay, future girlies will still be reading this πŸ’–βœ¨ bye bestie, go build that PBC πŸ¦‹

πŸ“¦ where this page comes from