STRUCT TB_CM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct tb_cm(9) β€” the Kernel API Manual moment

okay bestie, this is a page out of the Kernel API Manual, and it's about struct tb_cm, which is literally the Simple Thunderbolt connection manager. Yes, "simple" is doing a lot of work in that sentence but we move πŸ’…


✨ NAME ✨

struct tb_cm β€” the Simple Thunderbolt connection manager. that's the whole vibe. connection manager, but make it thunderbolt ⚑


🌸 SYNOPSIS 🌸

here's the shape of it, no cap, copy it exactly:

struct tb_cm {
    struct list_head tunnel_list;
    struct list_head dp_resources;
    bool hotplug_active;
    struct delayed_work remove_work;
    struct tb_bandwidth_group groups[MAX_GROUPS];
 };

five members, all iconic, all doing their own little job. let's meet them 🫢


πŸŽ€ Members πŸŽ€

  • tunnel_list β€” the list of active tunnels. everyone currently tunneling? they're on this list. periodt.
  • dp_resources β€” list of available DP resources for DP tunneling. this is like the resource shelf for DisplayPort tunneling β€” what's on the shelf is what you can use πŸ’–
  • hotplug_active β€” tb_handle_hotplug will stop progressing plug events and exit if this is not set (because it needs to acquire the lock one more time, lowkey needy). it's used to drain wq after cfg has been paused. so like… it's the little switch that tells hotplug "we're paused babe, wrap it up" πŸ›‘
  • remove_work β€” the work used to remove any unplugged routers after runtime resume. cleanup crew, showing up fashionably late (after resume) to take out the routers that got unplugged πŸ™ˆ
  • groups β€” bandwidth groups used in this domain. it's a tb_bandwidth_group array sized MAX_GROUPS, and yes, the groups are grouping. bandwidth allocation but organized πŸ’…

πŸ”₯ SEE ALSO πŸ”₯

the kernel file, in all its glory:

Kernel file ./drivers/thunderbolt/tb.c

and the rest of the friend group, all manual sections:


ngl bestie, if you're poking at the internals of Thunderbolt tunneling in the kernel, read the whole squad above before you touch anything. it's giving "read the docs first" energy for a reason 😭

and that's the page!! 🧚 source/version is ./drivers/thunderbolt, dated October 2026 β€” so go forth, manage those connections, and slay πŸ‘‘βœ¨

πŸ“¦ where this page comes from