ttm_tt(Translation Table)是 TTM 框架中用于管理 BO在系统内存(GTT)场景下的页表和物理页分配的核心结构体。它主要服务于那些不是固定显存(VRAM/AGP)的 BO,负责系统页分配、DMA 映射、缓存属性管理、swap 支持等。下面详细分析其功能、代码实现,以及 pages 的分配时机。
1. ttm_tt 的代码实现和核心功能
struct ttm_tt {
struct page **pages; // 系统内存页数组
uint32_t page_flags; // 页状态标志
uint32_t num_pages; // 页数量
struct sg_table *sg; // SG对象支持
dma_addr_t *dma_address; // DMA地址数组
struct file *swap_storage; // swap文件指针
struct file *backup; // 备份文件指针
enum ttm_caching caching; // 缓存属性
struct ttm_pool_tt_restore *restore; // 部分恢复支持
};
-
系统页管理
-
ttm_tt通过struct page *
-
订阅专栏 解锁全文
466

被折叠的 条评论
为什么被折叠?



