XenevaOS
Loading...
Searching...
No Matches
Classes | Macros | Functions
drm_pagemap_util.h File Reference
#include <linux/list.h>
#include <linux/mutex.h>
Include dependency graph for drm_pagemap_util.h:

Go to the source code of this file.

Classes

struct  drm_pagemap_owner_list
 

Macros

#define DRM_PAGEMAP_OWNER_LIST_DEFINE(_name)
 

Functions

void drm_pagemap_shrinker_add (struct drm_pagemap *dpagemap)
 
int drm_pagemap_cache_lock_lookup (struct drm_pagemap_cache *cache)
 
void drm_pagemap_cache_unlock_lookup (struct drm_pagemap_cache *cache)
 
struct drm_pagemap_shrinker * drm_pagemap_shrinker_create_devm (struct drm_device *drm)
 
struct drm_pagemap_cache * drm_pagemap_cache_create_devm (struct drm_pagemap_shrinker *shrinker)
 
struct drm_pagemap * drm_pagemap_get_from_cache (struct drm_pagemap_cache *cache)
 
void drm_pagemap_cache_set_pagemap (struct drm_pagemap_cache *cache, struct drm_pagemap *dpagemap)
 
struct drm_pagemap * drm_pagemap_get_from_cache_if_active (struct drm_pagemap_cache *cache)
 
void drm_pagemap_release_owner (struct drm_pagemap_peer *peer)
 
int drm_pagemap_acquire_owner (struct drm_pagemap_peer *peer, struct drm_pagemap_owner_list *owner_list, bool(*has_interconnect)(struct drm_pagemap_peer *peer1, struct drm_pagemap_peer *peer2))
 

Macro Definition Documentation

◆ DRM_PAGEMAP_OWNER_LIST_DEFINE

#define DRM_PAGEMAP_OWNER_LIST_DEFINE (   _name)
Value:
struct drm_pagemap_owner_list _name = { \
.lock = __MUTEX_INITIALIZER((_name).lock), \
.peers = LIST_HEAD_INIT((_name).peers) }
#define LIST_HEAD_INIT(name)
Definition list.h:15
Definition drm_pagemap_util.h:41
struct mutex lock
Definition drm_pagemap_util.h:43
struct list_head peers
Definition drm_pagemap_util.h:45

Function Documentation

◆ drm_pagemap_acquire_owner()

int drm_pagemap_acquire_owner ( struct drm_pagemap_peer *  peer,
struct drm_pagemap_owner_list *  owner_list,
bool(*)(struct drm_pagemap_peer *peer1, struct drm_pagemap_peer *peer2)  has_interconnect 
)

◆ drm_pagemap_cache_create_devm()

struct drm_pagemap_cache * drm_pagemap_cache_create_devm ( struct drm_pagemap_shrinker *  shrinker)

◆ drm_pagemap_cache_lock_lookup()

int drm_pagemap_cache_lock_lookup ( struct drm_pagemap_cache *  cache)

◆ drm_pagemap_cache_set_pagemap()

void drm_pagemap_cache_set_pagemap ( struct drm_pagemap_cache *  cache,
struct drm_pagemap *  dpagemap 
)

◆ drm_pagemap_cache_unlock_lookup()

void drm_pagemap_cache_unlock_lookup ( struct drm_pagemap_cache *  cache)

◆ drm_pagemap_get_from_cache()

struct drm_pagemap * drm_pagemap_get_from_cache ( struct drm_pagemap_cache *  cache)

◆ drm_pagemap_get_from_cache_if_active()

struct drm_pagemap * drm_pagemap_get_from_cache_if_active ( struct drm_pagemap_cache *  cache)

◆ drm_pagemap_release_owner()

void drm_pagemap_release_owner ( struct drm_pagemap_peer *  peer)

◆ drm_pagemap_shrinker_add()

void drm_pagemap_shrinker_add ( struct drm_pagemap *  dpagemap)

◆ drm_pagemap_shrinker_create_devm()

struct drm_pagemap_shrinker * drm_pagemap_shrinker_create_devm ( struct drm_device *  drm)