XenevaOS
Loading...
Searching...
No Matches
Public Attributes | List of all members
drm_gem_shmem_object Struct Reference

#include <drm_gem_shmem_helper.h>

Collaboration diagram for drm_gem_shmem_object:
Collaboration graph
[legend]

Public Attributes

struct drm_gem_object base
 
struct page ** pages
 
refcount_t pages_use_count
 
refcount_t pages_pin_count
 
int madv
 
struct list_head madv_list
 
struct sg_table * sgt
 
void * vaddr
 
refcount_t vmap_use_count
 
bool pages_mark_dirty_on_put: 1
 
bool pages_mark_accessed_on_put: 1
 
bool map_wc: 1
 

Detailed Description

struct drm_gem_shmem_object - GEM object backed by shmem

Member Data Documentation

◆ base

struct drm_gem_object drm_gem_shmem_object::base

@base: Base GEM object

◆ madv

int drm_gem_shmem_object::madv

@madv: State for madvise

0 is active/inuse. A negative value is the object is purged. Positive values are driver specific and not used by the helpers.

◆ madv_list

struct list_head drm_gem_shmem_object::madv_list

@madv_list: List entry for madvise tracking

Typically used by drivers to track purgeable objects

◆ map_wc

bool drm_gem_shmem_object::map_wc

@map_wc: map object write-combined (instead of using shmem defaults).

◆ pages

struct page** drm_gem_shmem_object::pages

@pages: Page table

◆ pages_mark_accessed_on_put

bool drm_gem_shmem_object::pages_mark_accessed_on_put

@pages_mark_accessed_on_put:

Mark pages as accessed when they are put.

◆ pages_mark_dirty_on_put

bool drm_gem_shmem_object::pages_mark_dirty_on_put

@pages_mark_dirty_on_put:

Mark pages as dirty when they are put.

◆ pages_pin_count

refcount_t drm_gem_shmem_object::pages_pin_count

@pages_pin_count:

Reference count on the pinned pages table.

Pages are hard-pinned and reside in memory if count greater than zero. Otherwise, when count is zero, the pages are allowed to be evicted and purged by memory shrinker.

◆ pages_use_count

refcount_t drm_gem_shmem_object::pages_use_count

@pages_use_count:

Reference count on the pages table. The pages are put when the count reaches zero.

◆ sgt

struct sg_table* drm_gem_shmem_object::sgt

@sgt: Scatter/gather table for imported PRIME buffers

◆ vaddr

void* drm_gem_shmem_object::vaddr

@vaddr: Kernel virtual address of the backing memory

◆ vmap_use_count

refcount_t drm_gem_shmem_object::vmap_use_count

@vmap_use_count:

Reference count on the virtual address. The address are un-mapped when the count reaches zero.


The documentation for this struct was generated from the following file: