icc_set_bw(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… icc_set_bw(9) β€” the kernel API manual, but make it make sense

okay bestie, welcome to the icc_set_bw page πŸ’– this one lives in the Kernel API Manual and it's literally the glow-up your interconnect path has been waiting for. no cap.


✨ NAME ✨

icc_set_bw β€” set bandwidth constraints on an interconnect path πŸŽ€


🌸 SYNOPSIS 🌸

int icc_set_bw (struct icc_path *path , u32 avg_bw , u32 peak_bw );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • path β€” the interconnect path. that's your lil route between two endpoints, the main character of this whole function ✨
  • avg_bw β€” average bandwidth, measured in kilobytes per second πŸ“
  • peak_bw β€” peak bandwidth, also in kilobytes per second πŸ”₯ (yes, the spicy one)

πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the vibe: this function is what an interconnect consumer calls to say "hey, these are my needs" β€” in terms of bandwidth β€” for a path it already requested earlier between two endpoints. you're not creating anything here, you're just expressing your truth πŸ’…

the requests get aggregated, and then each node along the way is updated accordingly. the entire path is locked by a mutex to make sure the whole set actually completes β€” nobody's cutting in mid-update, periodt. πŸ”’

quick heads-up bestie: path can totally be NULL β€” that happens when the "interconnects" DT properties are missing. in that case, it just means no constraints will be set. no drama, no constraints, we move on. 🫢

returns 0 on success, or an appropriate error code otherwise. that's it, that's the return 😭


🌈 SEE ALSO 🌈

the kernel file lives at ./drivers/interconnect/core.c β€” go say hi πŸ‘‹ and while you're there, here's the whole friend group:


okay that's the whole page, you ate that πŸ’…βœ¨ this one's from ./drivers/interconnect, dated October 2026 β€” see you in the next manpage, bestie, mwah πŸŽ€πŸ’–

πŸ“¦ where this page comes from