[Intel-gfx] [RFC 03/13] drm/i915/svm: Runtime (RT) allocator support
Niranjan Vishwanathapura
niranjana.vishwanathapura at intel.com
Mon Nov 25 16:40:57 UTC 2019
On Mon, Nov 25, 2019 at 09:59:37AM +0000, Chris Wilson wrote:
>Quoting Niranjana Vishwanathapura (2019-11-22 20:57:24)
>> Shared Virtual Memory (SVM) runtime allocator support allows
>> binding a shared virtual address to a buffer object (BO) in the
>> device page table through an ioctl call.
>
>The ioctl though is not svm specific, it is to do with "bulk residency"
>and can be used to reduce execbuf traffic to provide virtual address
>layout controls to e.g. Vulkan clients.
>
>I915_VM_BIND {
> uint32_t vm_id;
> int32_t fd; /* or -1 for anon, or buf depending on flags */
> uint64_t flags;
> uint64_t offset; /* offset info fd [page aligned] */
> uint64_t length; /* page aligned */
> uint64_t iova; /* page aligned */
> uint64_t extensions;
>}; /* where page aligned is actually more I915_GTT_PAGE_ALIGNMENT */
>
>as I recall. I also recall it being part of a future command stream
>interface to reduce ioctls, but that is another story.
Thanks Chris.
I will change I915_BIND to I915_VM_BIND.
Currently, it is only addressing binding SVM system (buffer) and runtime (BOs)
allocations. But it can be expanded for other bindings. I have 'type' field
instead of 'fd' and 'extensions' & 'iov' can be added later if required.
Is that OK?
>-Chris
More information about the Intel-gfx
mailing list