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

#include <drm_gpusvm.h>

Collaboration diagram for drm_gpusvm_ops:
Collaboration graph
[legend]

Public Attributes

struct drm_gpusvm_notifier *(* notifier_alloc )(void)
 
void(* notifier_free )(struct drm_gpusvm_notifier *notifier)
 
struct drm_gpusvm_range *(* range_alloc )(struct drm_gpusvm *gpusvm)
 
void(* range_free )(struct drm_gpusvm_range *range)
 
void(* invalidate )(struct drm_gpusvm *gpusvm, struct drm_gpusvm_notifier *notifier, const struct mmu_notifier_range *mmu_range)
 

Detailed Description

struct drm_gpusvm_ops - Operations structure for GPU SVM

This structure defines the operations for GPU Shared Virtual Memory (SVM). These operations are provided by the GPU driver to manage SVM ranges and notifiers.

Member Data Documentation

◆ invalidate

void(* drm_gpusvm_ops::invalidate) (struct drm_gpusvm *gpusvm, struct drm_gpusvm_notifier *notifier, const struct mmu_notifier_range *mmu_range)

@invalidate: Invalidate GPU SVM notifier (required) @gpusvm: Pointer to the GPU SVM @notifier: Pointer to the GPU SVM notifier @mmu_range: Pointer to the mmu_notifier_range structure

Invalidate the GPU page tables. It can safely walk the notifier range RB tree/list in this function. Called while holding the notifier lock.

◆ notifier_alloc

struct drm_gpusvm_notifier *(* drm_gpusvm_ops::notifier_alloc) (void)

@notifier_alloc: Allocate a GPU SVM notifier (optional)

Allocate a GPU SVM notifier.

Return: Pointer to the allocated GPU SVM notifier on success, NULL on failure.

◆ notifier_free

void(* drm_gpusvm_ops::notifier_free) (struct drm_gpusvm_notifier *notifier)

@notifier_free: Free a GPU SVM notifier (optional) @notifier: Pointer to the GPU SVM notifier to be freed

Free a GPU SVM notifier.

◆ range_alloc

struct drm_gpusvm_range *(* drm_gpusvm_ops::range_alloc) (struct drm_gpusvm *gpusvm)

@range_alloc: Allocate a GPU SVM range (optional) @gpusvm: Pointer to the GPU SVM

Allocate a GPU SVM range.

Return: Pointer to the allocated GPU SVM range on success, NULL on failure.

◆ range_free

void(* drm_gpusvm_ops::range_free) (struct drm_gpusvm_range *range)

@range_free: Free a GPU SVM range (optional) @range: Pointer to the GPU SVM range to be freed

Free a GPU SVM range.


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