tb_domain_di...ct_all_paths(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌩️ NAME

tb_domain_disconnect_all_paths β€” bestie, this is the one that disconnects all the paths for the domain. All of them. Every last one. πŸ’…

(also hi, you're reading the Kernel API Manual, and the header up top is literally truncated to tb_domain_di...ct_all_paths(9) because apparently even manpages run out of room β€” iconic honestly πŸ™ˆ)


✨ SYNOPSIS ✨

int tb_domain_disconnect_all_paths (struct tb *tb );

Yes the space before the ) is there in the original. We don't question the ancestors. 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • tb β€” the domain whose paths are getting disconnected. That's it, that's the whole argument. She's a one-argument girlie and honestly? Respect. πŸ‘‘

πŸ’– DESCRIPTION πŸ’–

Okay so here's the tea β˜• β€” this function can be used to disconnect all paths (both PCIe and XDomain, cover both bases bestie) for the domain. Like, for example, in preparation for a host NVM firmware upgrade. That's the classic use case, that's the moment she was born for ✨

🚨 Real talk though: after this is called, the paths cannot be established without resetting the switch. No vibe check, no retry, no "wait try again." You reset the switch or you get nothing. Not me warning you twice πŸ’€

🌈 RETURN 🌈

  • 0 in case of success πŸŽ‰
  • a negative errno otherwise 😭

That's the whole return contract. Zero is the slay outcome, negative errno means something went sideways and the kernel is telling you about it in the most cryptic way possible (iykyk).


πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file: ./drivers/thunderbolt/domain.c

The whole friend group πŸ‘―β€β™€οΈ:


okay that's the whole page, you ate that πŸ’… this lil drop came from ./drivers/thunderbolt, dated October 2026, and the footer's still out here truncating it as tb_domain_di...ct_all_paths(9) β€” she's shy, she's mysterious, she's a kernel symbol. bye bestie, go reset that switch 🧚✨

πŸ“¦ where this page comes from