drm/ttm: move populated state into page flags
Just use the top bit of page flags to store the populated state. Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200915024007.67163-8-airlied@gmail.com
This commit is contained in:
Родитель
3a4ab168a5
Коммит
3312be8f6f
|
@ -42,6 +42,8 @@ struct ttm_operation_ctx;
|
||||||
#define TTM_PAGE_FLAG_SG (1 << 8)
|
#define TTM_PAGE_FLAG_SG (1 << 8)
|
||||||
#define TTM_PAGE_FLAG_NO_RETRY (1 << 9)
|
#define TTM_PAGE_FLAG_NO_RETRY (1 << 9)
|
||||||
|
|
||||||
|
#define TTM_PAGE_FLAG_PRIV_POPULATED (1 << 31)
|
||||||
|
|
||||||
enum ttm_caching_state {
|
enum ttm_caching_state {
|
||||||
tt_uncached,
|
tt_uncached,
|
||||||
tt_wc,
|
tt_wc,
|
||||||
|
@ -70,22 +72,21 @@ struct ttm_tt {
|
||||||
struct sg_table *sg; /* for SG objects via dma-buf */
|
struct sg_table *sg; /* for SG objects via dma-buf */
|
||||||
struct file *swap_storage;
|
struct file *swap_storage;
|
||||||
enum ttm_caching_state caching_state;
|
enum ttm_caching_state caching_state;
|
||||||
bool populated;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static inline bool ttm_tt_is_populated(struct ttm_tt *tt)
|
static inline bool ttm_tt_is_populated(struct ttm_tt *tt)
|
||||||
{
|
{
|
||||||
return tt->populated;
|
return tt->page_flags & TTM_PAGE_FLAG_PRIV_POPULATED;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void ttm_tt_set_unpopulated(struct ttm_tt *tt)
|
static inline void ttm_tt_set_unpopulated(struct ttm_tt *tt)
|
||||||
{
|
{
|
||||||
tt->populated = false;
|
tt->page_flags &= ~TTM_PAGE_FLAG_PRIV_POPULATED;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void ttm_tt_set_populated(struct ttm_tt *tt)
|
static inline void ttm_tt_set_populated(struct ttm_tt *tt)
|
||||||
{
|
{
|
||||||
tt->populated = true;
|
tt->page_flags |= TTM_PAGE_FLAG_PRIV_POPULATED;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Загрузка…
Ссылка в новой задаче