xe_bo_set_pu...ble_shrinker(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ NAME ✨

okay bestie, welcome to the Kernel API Manual page for xe_bo_set_purgeable_shrinker(9) β€” the header calls it xe_bo_set_pu...ble_shrinker(9), and yes, the ellipsis is doing main character energy. The actual name line is: xe_bo_set_purgeable_shrinker β€” Update shrinker accounting for purgeable state. Slay.

🫢 SYNOPSIS 🫢

Here's the signature, copied exactly so the spaces and line break stay iconic:

void xe_bo_set_purgeable_shrinker (struct xe_bo *bo , enum
       xe_madv_purgeable_state new_state );

πŸ’… ARGUMENTS πŸ’…

  • bo β€” Buffer object. The BO in question, bestie.
  • new_state β€” New purgeable state being set. That's the state it's moving to.

🧚 DESCRIPTION 🧚

Okay so here's the tea: when the BO purgeable state changes, this function transfers pages between the shrinkable and purgeable buckets. It gets called automatically from xe_bo_set_purgeable_state β€” that's the icon who triggers it, iykyk.

For pinned BOs, whose pages are not accounted, only the purgeable flag is updated, so that the correct bucket is used when the BO is unpinned. That's the important caveat, bestie: pinned BOs don't get their pages accounted here, but the purgeable flag still gets updated for later. No cap, periodt.

πŸ‘‘ SEE ALSO πŸ‘‘

Kernel file: ./drivers/gpu/drm/xe/xe_bo.c β€” home base. Plus the whole SEE ALSO friend group, no skips:

xoxo, signed off from the source path ./drivers/gpu/drm/xe, dated October 2026 β€” that's the footer tea, bestie. πŸ’…πŸ«Άβœ¨

πŸ“¦ where this page comes from