STRUCT I915_TTM_TT(9)
π struct i915_ttm_tt(9) β a lil' glow-up
okay so this is a page from the Kernel API Manual (yes, the kernel has a manual, she's that girl) and it's all about struct i915_ttm_tt, bestie. it's a TTM page vector that also carries around some extra private info like a little handbag of secrets πβ¨
πΈ NAME πΈ
struct i915_ttm_tt β literally a TTM page vector with additional private info tacked on. that's it, that's the vibe.
β¨ SYNOPSIS β¨
look at her, she's so structured:
struct i915_ttm_tt {
struct ttm_tt ttm;
struct device *dev;
struct i915_refct_sgt cached_rsgt;
bool is_shmem;
struct file *filp;
};
π Members π
ttmβ the base TTM page vector, the main character foundation everything else sits on πdevβ thestruct devicethat gets used for dma mapping and unmapping, she's the one doing the actual DMA-ing π«Άcached_rsgtβ the cached scatter-gather table. stored and ready, no cap πΈis_shmemβ aboolthat's set if we're using shmem β¨filpβ the shmem file, but only if you're on the shmem backend, iykyk π
π¦ Description π¦
okay this is the important part, listen up π’
so here's the thing: DMA may be going on right up to the point where the page-vector is unpopulated in delayed destroy. like, literally up until the last second π so that means you keep the scatter-gather table mapped and cached up to that point. don't let it go early, she's still working!
and this is different from the cached gem object io scatter-gather table β that one doesn't have an associated dma mapping. so don't go mixing them up, bestie, they are not the same thing π
π SEE ALSO π
- Kernel file:
./drivers/gpu/drm/i915/gem/i915_gem_ttm.c i915_ttm_sys_placement(9)i915_ttm_free_cached_io_rsgt(9)i915_ttm_purge(9)i915_ttm_resource_get_st(9)i915_ttm_resource_mappable(9)i915_ttm_driver(9)- Migration vs eviction(9)
i915_ttm_adjust_lru(9)
go read the whole friend group, they all slay in their own way π
and that's a wrap, bestie! π¬ this page came out of ./drivers/gpu/drm/i915/gem in October 2026, and yes she's filed under struct i915_ttm_tt(9) β iconic, no notes ππ
π¦ 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