STRUCT TB_BANDWIDTH_GROUP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, this is the struct tb_bandwidth_group(9) page from the Kernel API Manual, and it’s literally the bandwidth management group struct. Let’s get into every detail, no skipping πŸ’…βœ¨

πŸ’– NAME πŸ’–

struct tb_bandwidth_group β€” Bandwidth management group. That’s the whole vibe: a group for managing bandwidth, and yes it’s giving main character energy πŸŽ€

✨ SYNOPSIS ✨

the struct looks exactly like this:

       struct tb_bandwidth_group {
           struct tb *tb;
           int index;
           struct list_head ports;
           int reserved;
           struct delayed_work release_work;
        };

🧚 Members 🧚

  • tb β€” Pointer to the domain the group belongs to. It knows its domain, periodt πŸ’«
  • index β€” Index of the group (aka Group_ID). Valid values 1-7. Like, only 1 through 7, bestie, that’s the range πŸ”₯
  • ports β€” DP IN adapters belonging to this group are linked here. All the DP IN adapters in this group are hooked up right here 🫢
  • reserved β€” Bandwidth released by one tunnel in the group, available to others. This is reported as part of estimated_bw for the group. So yes, that reserved bandwidth is part of the group’s estimated_bw report πŸ’…
  • release_work β€” Worker to release the reserved if it is not used by any of the tunnels. It’s the cleanup crew for unused reserved bandwidth 🧹

🌸 Description 🌸

okay so any tunnel that requires isochronous bandwidth β€” that’s DP for now β€” is attached to a bandwidth group. All tunnels going through the same USB4 links share the same group and can dynamically distribute the bandwidth within the group. It’s giving shared-resource main character energy, but make it USB4 🌈

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file ./drivers/thunderbolt/tb.h, plus the whole cross-ref clique:


that’s the whole page, bestie 🫢 β€” source ./drivers/thunderbolt, dated October 2026, from the Kernel API Manual, page struct tb_bandwidth_group(9). bye πŸ’…βœ¨

πŸ“¦ where this page comes from