• Home
  • Raw
  • Download

Lines Matching +full:async +full:- +full:enum

18 User has to opt-in for VM_BIND mode of binding for an address space (VM)
34 ------------------------
42 -------------------------------
52 "dma-buf: Add an API for exporting sync files"
68 be using the i915_vma active reference tracking. It will instead use dma-resv
78 -------------------
79 By default, BOs can be mapped on multiple VMs and can also be dma-buf
82 dma-resv fence list of all shared BOs mapped on the VM.
87 the VM they are private to and can't be dma-buf exported.
88 All private BOs of a VM share the dma-resv object. Hence during each execbuf
89 submission, they need only one dma-resv fence list updated. Thus, the fast
94 -------------------------
104 1) Lock-A: A vm_bind mutex will protect vm_bind lists. This lock is taken in
113 2) Lock-B: The object's dma-resv lock will protect i915_vma state and needs to
114 be held while binding/unbinding a vma in the async worker and while updating
115 dma-resv fence list of an object. Note that private BOs of a VM will all
116 share a dma-resv object.
121 3) Lock-C: Spinlock/s to protect some of the VM's lists like the list of
127 fault handler, where we take lock-A in read mode, whichever lock-B we need to
129 system allocator) and some additional locks (lock-D) for taking care of page
131 so won't ever need lock-C.
134 ---------------------
145 -----------------------
148 over sync (See enum dma_resv_usage). One can override it with either
157 Also, in VM_BIND mode, use dma-resv apis for determining object activeness
163 --------------
165 hence improving performance of CPU-bound applications. It also allows us to
174 ------------------------------
175 Usage of dma-fence expects that they complete in reasonable amount of time.
177 compute to use user/memory fence (See `User/Memory Fence`_) and dma-fence usage
178 must be limited to in-kernel consumption only.
183 done by having a per-context preempt fence which is enabled when someone tries
190 waiting process. User fence can be signaled either by the GPU or kernel async
205 ---------
211 ----------------
214 binding will require using dma-fence to ensure residency, the GPU page faults
215 mode when supported, will not use any dma-fence as residency is purely managed
219 --------------------------
221 include placement and atomicity. Sub-BO level placement hint will be even more
222 relevant with upcoming GPU on-demand page fault support.
225 -------------------------------
229 ---------------------------------
237 ------------------------------------
245 .. kernel-doc:: Documentation/gpu/rfc/i915_vm_bind.h