cxl_endpoin...er_bandwidth(9)
πΈ NAME πΈ
cxl_endpoint_gather_bandwidth β okay so this one literally collects all the endpoint bandwidth into an xarray π (and yes, the header up top got chopped to cxl_endpoin...er_bandwidth(9) because terminals are dramatic, but it's a Kernel API Manual situation, section 9, iykyk β¨)
π SYNOPSIS π
int cxl_endpoint_gather_bandwidth (struct cxl_region *cxlr , struct
cxl_endpoint_decoder *cxled , struct xarray *usp_xa , bool *gp_is_root );
π ARGUMENTS π
cxlrβ the CXL region we're doing the bandwidth calculation for π«Άcxledβ the endpoint decoder you're starting on, bestie, this is the starting point β¨usp_xaβ (output!) the xarray that collects all the bandwidth coordinates, indexed by the upstream device, holding data ofstruct cxl_perf_ctxπgp_is_rootβ (output!) aboolof whether the grandparent is cxl root π
β RETURN β
0 for success or -errno π (so like, classic kernel vibes β zero is the slay, negative errno is the not-slaying)
π¦ DESCRIPTION π¦
So what this actually does: it collects the aggregated endpoint bandwidth and stores that bandwidth in an xarray indexed by the upstream device of the switch or the RP device π.
Each endpoint consists the minimum of:
- the bandwidth from DSLBIS from the endpoint CDAT
- the endpoint upstream link bandwidth
- the bandwidth from the SSLBIS of the switch CDAT for the switch upstream port to the downstream port that's associated with the endpoint
So yeah β it's the minimum of those three, no cap π and if the device is directly connected to a RP, then no SSLBIS is involved at all, periodt π§
π₯ SEE ALSO π₯
- Kernel file
./drivers/cxl/core/cdat.cπ cxl_coordinates_combine(9)cxl_switch_gather_bandwidth(9)cxl_rp_gather_bandwidth(9)cxl_hb_gather_bandwidth(9)cxl_region_update_bandwidth(9)cxl_region_shared_upstream_bandwidth_update(9)
π fr fr, that's the whole page β go read the friends above if you want the full lore β¨
okay bye ily, this page lives in ./drivers/cxl/core, dated October 2026, from the Kernel API Manual β mwah π π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms