[RFC 02/13] drm/i915/svm: Define SVM UAPI

2019-11-22 Thread Niranjana Vishwanathapura
Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Venkata Sandeep Dhanalakota --- include/uapi/drm/i915_drm.h | 70 + 1 file changed, 70 insertions(+) diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h index b127a99da1c1

[RFC 04/13] drm/i915/svm: Implicitly migrate BOs upon CPU access

2019-11-22 Thread Niranjana Vishwanathapura
: Niranjana Vishwanathapura Signed-off-by: Venkata Sandeep Dhanalakota --- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 10 drivers/gpu/drm/i915/gem/i915_gem_object.c | 29 +- drivers/gpu/drm/i915/gem/i915_gem_object.h | 3 +++ drivers/gpu/drm/i915

[RFC 05/13] drm/i915/svm: Page table update support for SVM

2019-11-22 Thread Niranjana Vishwanathapura
For Shared Virtual Memory (SVM) system (SYS) allocator, there is no backing buffer object (BO). Add support to bind a VA to PA mapping in the device page table. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu

[RFC 09/13] drm/i915/svm: Page copy support during migration

2019-11-22 Thread Niranjana Vishwanathapura
Copy the pages duing SVM migration using memcpy(). Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/i915_svm_devmem.c | 72 ++ 1 file changed, 72 insertions(+) diff --git

[RFC 07/13] drm/i915/svm: Device memory support

2019-11-22 Thread Niranjana Vishwanathapura
Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig | 9 + drivers/gpu/drm/i915/Makefile | 3 +- drivers/gpu/drm/i915/gem/i915_gem_object.c | 13 - drivers/gpu/drm/i915/i915_buddy.h | 12

[RFC 13/13] drm/i915/svm: Add page table dump support

2019-11-22 Thread Niranjana Vishwanathapura
[0x000] 0x8: 0x5d0803 Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig.debug| 14 +++ .../gpu/drm/i915/gem/i915_gem_execbuffer.c| 1 + drivers/gpu/drm/i915

[RFC 12/13] drm/i915/svm: Add support to en/disable SVM

2019-11-22 Thread Niranjana Vishwanathapura
Add SVM as a capability and allow user to enable/disable SVM functionality on a per context basis. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Venkata Sandeep Dhanalakota --- drivers/gpu/drm/i915/gem

[RFC 11/13] drm/i915/svm: Use blitter copy for migration

2019-11-22 Thread Niranjana Vishwanathapura
Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/i915_svm_devmem.c | 249 - 1 file changed, 245 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_svm_devmem.c b/drivers/gpu/drm

[RFC 10/13] drm/i915/svm: Add functions to blitter copy SVM buffers

2019-11-22 Thread Niranjana Vishwanathapura
Add support function to blitter copy SVM VAs without requiring any gem objects. Also add function to wait for completion of the copy. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Makefile

[RFC 00/13] drm/i915/svm: Add SVM support

2019-11-22 Thread Niranjana Vishwanathapura
table dump support. References: https://www.kernel.org/doc/Documentation/vm/hmm.rst The HMM use cases in the Linux kernel. Niranjana Vishwanathapura (12): drm/i915/svm: Add SVM documentation drm/i915/svm: Define SVM UAPI drm/i915/svm: Runtime (RT) allocator support drm/i915/svm: Page table

[RFC 08/13] drm/i915/svm: Implicitly migrate pages upon CPU fault

2019-11-22 Thread Niranjana Vishwanathapura
As PCIe is non-coherent link, do not allow direct memory access across PCIe link. Handle CPU fault by migrating pages back to host memory. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915

[RFC 06/13] drm/i915/svm: Page table mirroring support

2019-11-22 Thread Niranjana Vishwanathapura
Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig| 3 + drivers/gpu/drm/i915/Makefile | 3 +- drivers/gpu/drm/i915/i915_drv.c | 3 + drivers/gpu/drm/i915/i915_gem_gtt.c | 5 + drivers/gpu/drm/i915/i915_gem_gtt.h | 4 + drivers/gpu/drm/i915

[RFC 03/13] drm/i915/svm: Runtime (RT) allocator support

2019-11-22 Thread Niranjana Vishwanathapura
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. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers

[RFC 01/13] drm/i915/svm: Add SVM documentation

2019-11-22 Thread Niranjana Vishwanathapura
Add Shared Virtual Memory (SVM) support information. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/i915.rst | 29 + 1 file changed, 29 insertions(+) diff --git

[RFC v2 05/12] drm/i915/svm: Page table mirroring support

2019-12-13 Thread Niranjana Vishwanathapura
Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig| 3 + drivers/gpu/drm/i915/Makefile | 3 +- drivers/gpu/drm/i915/i915_drv.c | 5 + drivers/gpu/drm/i915/i915_gem_gtt.c | 5 + drivers/gpu/drm/i915/i915_gem_gtt.h | 4 + drivers/gpu/drm/i915

[RFC v2 00/12] drm/i915/svm: Add SVM support

2019-12-13 Thread Niranjana Vishwanathapura
ame change as per review feedback - Reformat RFC series - Some minor fixes Niranjana Vishwanathapura (11): drm/i915/svm: Add SVM documentation drm/i915/svm: Runtime (RT) allocator support drm/i915/svm: Page table update support for SVM drm/i915/svm: Page table mirroring support drm/i915/s

[RFC v2 01/12] drm/i915/svm: Add SVM documentation

2019-12-13 Thread Niranjana Vishwanathapura
Add Shared Virtual Memory (SVM) support information. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/i915.rst | 29 + 1 file changed, 29 insertions(+) diff --git

[RFC v2 02/12] drm/i915/svm: Runtime (RT) allocator support

2019-12-13 Thread Niranjana Vishwanathapura
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. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers

[RFC v2 07/12] drm/i915/svm: Implicitly migrate pages upon CPU fault

2019-12-13 Thread Niranjana Vishwanathapura
As PCIe is non-coherent link, do not allow direct memory access across PCIe link. Handle CPU fault by migrating pages back to host memory. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915

[RFC v2 09/12] drm/i915/svm: Add functions to blitter copy SVM buffers

2019-12-13 Thread Niranjana Vishwanathapura
Add support function to blitter copy SVM VAs without requiring any gem objects. Also add function to wait for completion of the copy. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Makefile

[RFC v2 06/12] drm/i915/svm: Device memory support

2019-12-13 Thread Niranjana Vishwanathapura
Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig | 9 + drivers/gpu/drm/i915/Makefile | 3 +- drivers/gpu/drm/i915/gem/i915_gem_object.c | 13 - drivers/gpu/drm/i915/i915_buddy.h | 12

[RFC v2 08/12] drm/i915/svm: Page copy support during migration

2019-12-13 Thread Niranjana Vishwanathapura
Copy the pages duing SVM migration using memcpy(). Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/i915_svm_devmem.c | 72 ++ 1 file changed, 72 insertions(+) diff --git

[RFC v2 03/12] drm/i915/svm: Implicitly migrate BOs upon CPU access

2019-12-13 Thread Niranjana Vishwanathapura
: Niranjana Vishwanathapura Signed-off-by: Venkata Sandeep Dhanalakota --- drivers/gpu/drm/i915/gem/i915_gem_mman.c | 10 drivers/gpu/drm/i915/gem/i915_gem_object.c | 29 +- drivers/gpu/drm/i915/gem/i915_gem_object.h | 3 +++ drivers/gpu/drm/i915

[RFC v2 11/12] drm/i915/svm: Add support to en/disable SVM

2019-12-13 Thread Niranjana Vishwanathapura
Add SVM as a capability and allow user to enable/disable SVM functionality on a per context basis. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Venkata Sandeep Dhanalakota --- drivers/gpu/drm/i915/gem

[RFC v2 12/12] drm/i915/svm: Add page table dump support

2019-12-13 Thread Niranjana Vishwanathapura
[0x000] 0x8: 0x5d0803 Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/Kconfig.debug| 14 +++ .../gpu/drm/i915/gem/i915_gem_execbuffer.c| 1 + drivers/gpu/drm/i915

[RFC v2 04/12] drm/i915/svm: Page table update support for SVM

2019-12-13 Thread Niranjana Vishwanathapura
For Shared Virtual Memory (SVM) system (SYS) allocator, there is no backing buffer object (BO). Add support to bind a VA to PA mapping in the device page table. Cc: Joonas Lahtinen Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu

[RFC v2 10/12] drm/i915/svm: Use blitter copy for migration

2019-12-13 Thread Niranjana Vishwanathapura
Cc: Jon Bloomfield Cc: Daniel Vetter Cc: Sudeep Dutt Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/i915_svm_devmem.c | 249 - 1 file changed, 245 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_svm_devmem.c b/drivers/gpu/drm

Re: [RFC v2 05/12] drm/i915/svm: Page table mirroring support

2019-12-22 Thread Niranjana Vishwanathapura
On Fri, Dec 20, 2019 at 01:45:33PM +, Jason Gunthorpe wrote: On Wed, Dec 18, 2019 at 02:41:47PM -0800, Niranjana Vishwanathapura wrote: > > +static u32 i915_svm_build_sg(struct i915_address_space *vm, > > + struct hmm_

Re: [RFC v2 06/12] drm/i915/svm: Device memory support

2019-12-18 Thread Niranjana Vishwanathapura
On Tue, Dec 17, 2019 at 08:35:47PM +, Jason Gunthorpe wrote: On Fri, Dec 13, 2019 at 01:56:08PM -0800, Niranjana Vishwanathapura wrote: @@ -169,6 +170,11 @@ static int i915_range_fault(struct svm_notifier *sn, return ret

Re: [Intel-gfx] [RFC v2 02/12] drm/i915/svm: Runtime (RT) allocator support

2019-12-18 Thread Niranjana Vishwanathapura
On Tue, Dec 17, 2019 at 12:01:26PM -0600, Jason Ekstrand wrote: On Sun, Dec 15, 2019 at 10:24 PM Niranjan Vishwanathapura wrote: On Sat, Dec 14, 2019 at 10:31:37AM +, Chris Wilson wrote: >Quoting Jason Ekstrand (2019-12-14 00:36:19) >> On Fri, Dec 13, 2019 at 5:24 PM

Re: [RFC v2 05/12] drm/i915/svm: Page table mirroring support

2019-12-18 Thread Niranjana Vishwanathapura
On Tue, Dec 17, 2019 at 08:31:07PM +, Jason Gunthorpe wrote: On Fri, Dec 13, 2019 at 01:56:07PM -0800, Niranjana Vishwanathapura wrote: +static struct i915_svm *vm_get_svm(struct i915_address_space *vm) +{ + struct i915_svm *svm = vm->svm; + + mutex_lock(>svm

Re: [Intel-gfx] [RFC v2 02/12] drm/i915/svm: Runtime (RT) allocator support

2019-12-18 Thread Niranjana Vishwanathapura
On Sun, Dec 15, 2019 at 08:15:24PM -0800, Niranjan Vishwanathapura wrote: On Sat, Dec 14, 2019 at 10:56:54AM +, Chris Wilson wrote: Quoting Niranjana Vishwanathapura (2019-12-13 21:56:04) Shared Virtual Memory (SVM) runtime allocator support allows binding a shared virtual address

Re: [RFC v2 02/12] drm/i915/svm: Runtime (RT) allocator support

2019-12-18 Thread Niranjana Vishwanathapura
On Tue, Dec 17, 2019 at 08:18:21PM +, Jason Gunthorpe wrote: On Fri, Dec 13, 2019 at 01:56:04PM -0800, Niranjana Vishwanathapura wrote: + ctx = i915_gem_context_lookup(file->driver_priv, args->rsvd1); + if (!ctx || !rcu_access_pointer(ctx->vm)) + retur

Re: [RFC v2 00/12] drm/i915/svm: Add SVM support

2020-01-24 Thread Niranjana Vishwanathapura
On Fri, Dec 13, 2019 at 01:56:02PM -0800, Niranjana Vishwanathapura wrote: Shared Virtual Memory (SVM) allows the programmer to use a single virtual address space which will be shared between threads executing on CPUs and GPUs. It abstracts away from the user the location of the backing memory

[RFC 1/2] drm/doc/rfc: VM_BIND feature design document

2021-08-05 Thread Niranjana Vishwanathapura
VM_BIND design document with description of intended use cases. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.rst | 126 + Documentation/gpu/rfc/index.rst| 4 + 2 files changed, 130 insertions(+) create mode 100644

[RFC 2/2] drm/doc/rfc: VM_BIND uapi definition

2021-08-05 Thread Niranjana Vishwanathapura
VM_BIND and GEM_WAIT_USER_FENCE uapi document Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h | 113 + Documentation/gpu/rfc/i915_vm_bind.rst | 6 ++ 2 files changed, 119 insertions(+) create mode 100644 Documentation/gpu/rfc

[RFC 0/2] drm/doc/rfc: i915 VM_BIND feature design + uapi

2021-08-05 Thread Niranjana Vishwanathapura
This is the i915 driver VM_BIND feature design RFC patch series along with the required uapi definition and description of intended use cases. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (2): drm/doc/rfc: VM_BIND feature design document drm/doc/rfc: VM_BIND uapi

[RFC v2 0/2] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-03-07 Thread Niranjana Vishwanathapura
This is the i915 driver VM_BIND feature design RFC patch series along with the required uapi definition and description of intended use cases. v2: Updated design and uapi, more documentation. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (2): drm/doc/rfc: VM_BIND feature

[RFC v2 2/2] drm/doc/rfc: VM_BIND uapi definition

2022-03-07 Thread Niranjana Vishwanathapura
VM_BIND und related uapi definitions Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h | 176 +++ 1 file changed, 176 insertions(+) create mode 100644 Documentation/gpu/rfc/i915_vm_bind.h diff --git a/Documentation/gpu/rfc/i915_vm_bind.h

[RFC v2 1/2] drm/doc/rfc: VM_BIND feature design document

2022-03-07 Thread Niranjana Vishwanathapura
VM_BIND design document with description of intended use cases. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.rst | 210 + Documentation/gpu/rfc/index.rst| 4 + 2 files changed, 214 insertions(+) create mode 100644

Re: [PATCH 2/2] drm/i915: Remove the vm open count

2022-03-01 Thread Niranjana Vishwanathapura
mutex is no longer needed. Cc: Co-developed-by: Niranjana Vishwanathapura Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Thomas Hellström --- drivers/gpu/drm/i915/display/intel_dpt.c | 2 +- drivers/gpu/drm/i915/gem/i915_gem_context.c | 29 ++- .../gpu/drm/i915/gem

Re: [PATCH v2 3/3] drm/i915/gem: Remove some unnecessary code

2022-03-02 Thread Niranjana Vishwanathapura
a); } } Looks good to me. Reviewed-by: Niranjana Vishwanathapura -- 2.34.1

Re: [PATCH v2 1/3] drm/i915: Remove the vm open count

2022-03-02 Thread Niranjana Vishwanathapura
Vishwanathapura Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Thomas Hellström --- drivers/gpu/drm/i915/display/intel_dpt.c | 2 +- drivers/gpu/drm/i915/gem/i915_gem_context.c | 29 ++- .../gpu/drm/i915/gem/i915_gem_execbuffer.c| 6 ++ .../gpu/drm/i915/gem/selftests/mock_context.c

Re: [PATCH v2 2/3] drm/i915: Remove the vma refcount

2022-03-02 Thread Niranjana Vishwanathapura
k while iterating over the list? But this just something I noticed and not related to this patch. This patch looks good to me. Reviewed-by: Niranjana Vishwanathapura diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c index 91538bc38110..6fd25b39748f 100644 ---

Re: [Intel-gfx] [RFC v2 2/2] drm/doc/rfc: VM_BIND uapi definition

2022-04-20 Thread Niranjana Vishwanathapura
On Wed, Mar 30, 2022 at 02:51:41PM +0200, Daniel Vetter wrote: On Mon, Mar 07, 2022 at 12:31:46PM -0800, Niranjana Vishwanathapura wrote: VM_BIND und related uapi definitions Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h | 176

Re: [RFC v2 1/2] drm/doc/rfc: VM_BIND feature design document

2022-04-20 Thread Niranjana Vishwanathapura
for the subsystem at large. There is substantial rework involved here, but it's not any different from i915 adopting ttm or i915 adpoting drm/sched, and I do think this stuff needs to happen in one form or another. On Mon, Mar 07, 2022 at 12:31:45PM -0800, Niranjana Vishwanathapura wrote: VM_BIND

Re: [RFC v2 1/2] drm/doc/rfc: VM_BIND feature design document

2022-04-20 Thread Niranjana Vishwanathapura
Vishwanathapura wrote: > VM_BIND design document with description of intended use cases. > > Signed-off-by: Niranjana Vishwanathapura > --- > Documentation/gpu/rfc/i915_vm_bind.rst | 210 + > Documentation/gpu/rfc/index.rst| 4 + > 2 files changed, 214 in

Re: [RFC v2 1/2] drm/doc/rfc: VM_BIND feature design document

2022-04-20 Thread Niranjana Vishwanathapura
On Wed, Mar 09, 2022 at 10:58:09AM -0500, Alex Deucher wrote: On Mon, Mar 7, 2022 at 3:30 PM Niranjana Vishwanathapura wrote: VM_BIND design document with description of intended use cases. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.rst | 210

[RFC v3 2/3] drm/i915: Update i915 uapi documentation

2022-05-17 Thread Niranjana Vishwanathapura
Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura --- include/uapi/drm/i915_drm.h | 153 +++- 1 file changed, 116 insertions(+), 37 deletions(-) diff --git

[RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-05-17 Thread Niranjana Vishwanathapura
VM_BIND design document with description of intended use cases. v2: Add more documentation and format as per review comments from Daniel. Signed-off-by: Niranjana Vishwanathapura --- Documentation/driver-api/dma-buf.rst | 2 + Documentation/gpu/rfc/i915_vm_bind.rst | 304

[RFC v3 0/3] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-05-17 Thread Niranjana Vishwanathapura
i915_drm uapi kernel-docs which are required) as per review comments from Daniel. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (3): drm/doc/rfc: VM_BIND feature design document drm/i915: Update i915 uapi documentation drm/doc/rfc: VM_BIND uapi definition

[RFC v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-05-17 Thread Niranjana Vishwanathapura
VM_BIND and related uapi definitions v2: Ensure proper kernel-doc formatting with cross references. Also add new uapi and documentation as per review comments from Daniel. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h | 399

Re: [Intel-gfx] [RFC v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-01 Thread Niranjana Vishwanathapura
On Wed, Jun 01, 2022 at 11:27:17AM +0200, Daniel Vetter wrote: On Wed, 1 Jun 2022 at 11:03, Dave Airlie wrote: On Tue, 24 May 2022 at 05:20, Niranjana Vishwanathapura wrote: > > On Thu, May 19, 2022 at 04:07:30PM -0700, Zanoni, Paulo R wrote: > >On Tue, 2022-05-17 at 11:32 -070

Re: [Intel-gfx] [RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-02 Thread Niranjana Vishwanathapura
On Thu, Jun 02, 2022 at 09:22:46AM -0700, Matthew Brost wrote: On Thu, Jun 02, 2022 at 08:42:13AM +0300, Lionel Landwerlin wrote: On 02/06/2022 00:18, Matthew Brost wrote: > On Wed, Jun 01, 2022 at 05:25:49PM +0300, Lionel Landwerlin wrote: > > On 17/05/2022 21:32, Niranjana Vishwa

Re: [Intel-gfx] [RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-02 Thread Niranjana Vishwanathapura
On Wed, Jun 01, 2022 at 01:28:36PM -0700, Matthew Brost wrote: On Wed, Jun 01, 2022 at 05:25:49PM +0300, Lionel Landwerlin wrote: On 17/05/2022 21:32, Niranjana Vishwanathapura wrote: > +VM_BIND/UNBIND ioctl will immediately start binding/unbinding the mapping in an > +async

Re: [RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-02 Thread Niranjana Vishwanathapura
On Wed, Jun 01, 2022 at 07:13:16PM -0700, Zeng, Oak wrote: Regards, Oak -Original Message- From: dri-devel On Behalf Of Niranjana Vishwanathapura Sent: May 17, 2022 2:32 PM To: intel-...@lists.freedesktop.org; dri-devel@lists.freedesktop.org; Vetter, Daniel Cc: Brost, Matthew

Re: [RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-05-23 Thread Niranjana Vishwanathapura
On Mon, May 23, 2022 at 12:05:05PM -0700, Niranjana Vishwanathapura wrote: On Thu, May 19, 2022 at 03:52:01PM -0700, Zanoni, Paulo R wrote: On Tue, 2022-05-17 at 11:32 -0700, Niranjana Vishwanathapura wrote: VM_BIND design document with description of intended use cases. v2: Add more

Re: [Intel-gfx] [RFC v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-05-23 Thread Niranjana Vishwanathapura
On Thu, May 19, 2022 at 04:07:30PM -0700, Zanoni, Paulo R wrote: On Tue, 2022-05-17 at 11:32 -0700, Niranjana Vishwanathapura wrote: VM_BIND and related uapi definitions v2: Ensure proper kernel-doc formatting with cross references. Also add new uapi and documentation as per review

Re: [RFC v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-05-23 Thread Niranjana Vishwanathapura
On Thu, May 19, 2022 at 03:52:01PM -0700, Zanoni, Paulo R wrote: On Tue, 2022-05-17 at 11:32 -0700, Niranjana Vishwanathapura wrote: VM_BIND design document with description of intended use cases. v2: Add more documentation and format as per review comments from Daniel. Signed-off

Re: [Intel-gfx] [PATCH v5 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-24 Thread Niranjana Vishwanathapura
On Fri, Jun 24, 2022 at 09:11:35AM +0100, Tvrtko Ursulin wrote: On 24/06/2022 06:32, Niranjana Vishwanathapura wrote: VM_BIND and related uapi definitions v2: Reduce the scope to simple Mesa use case. v3: Expand VM_UNBIND documentation and add I915_GEM_VM_BIND/UNBIND_FENCE_VALID

[PATCH v6 2/3] drm/i915: Update i915 uapi documentation

2022-06-24 Thread Niranjana Vishwanathapura
Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Matthew Auld --- include/uapi/drm/i915_drm.h | 205 1 file changed, 160 insertions(+), 45

[PATCH v6 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-24 Thread Niranjana Vishwanathapura
for vm_bind/unbind. v5: Remove TLB flush requirement on VM_UNBIND. Add version support to stage implementation. v6: Define and use drm_i915_gem_timeline_fence structure for all timeline fences. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h | 286

[PATCH v6 0/3] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-06-24 Thread Niranjana Vishwanathapura
documentation. Add version support to stage implementation. v6: Define and use drm_i915_gem_timeline_fence structure for execbuf3 and vm_bind/unbind timeline fences. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (3): drm/doc/rfc: VM_BIND feature design document drm

[PATCH v6 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-24 Thread Niranjana Vishwanathapura
VM_BIND design document with description of intended use cases. v2: Reduce the scope to simple Mesa use case. v3: Expand documentation on dma-resv usage, TLB flushing and execbuf3. v4: Remove vm_bind tlb flush request support. v5: Update TLB flushing documentation. Signed-off-by: Niranjana

[PATCH v3 0/3] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-06-21 Thread Niranjana Vishwanathapura
instead of an in/out timeline fence array. v3: Expand documentation on dma-resv usage, TLB flushing, execbuf3 and VM_UNBIND. Add FENCE_VALID and TLB_FLUSH flags. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (3): drm/doc/rfc: VM_BIND feature design document drm

[PATCH v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-21 Thread Niranjana Vishwanathapura
VM_BIND and related uapi definitions v2: Reduce the scope to simple Mesa use case. v3: Expand VM_UNBIND documentation and add I915_GEM_VM_BIND/UNBIND_FENCE_VALID and I915_GEM_VM_BIND_TLB_FLUSH flags. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.h

[PATCH v3 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-21 Thread Niranjana Vishwanathapura
VM_BIND design document with description of intended use cases. v2: Reduce the scope to simple Mesa use case. v3: Expand documentation on dma-resv usage, TLB flushing and execbuf3. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.rst | 247

[PATCH v3 2/3] drm/i915: Update i915 uapi documentation

2022-06-21 Thread Niranjana Vishwanathapura
Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Matthew Auld --- include/uapi/drm/i915_drm.h | 205 1 file changed, 160 insertions(+), 45

Re: [Intel-gfx] [PATCH v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-23 Thread Niranjana Vishwanathapura
On Thu, Jun 23, 2022 at 09:27:22AM +0100, Tvrtko Ursulin wrote: On 22/06/2022 17:44, Niranjana Vishwanathapura wrote: On Wed, Jun 22, 2022 at 04:57:17PM +0100, Tvrtko Ursulin wrote: On 22/06/2022 16:12, Niranjana Vishwanathapura wrote: On Wed, Jun 22, 2022 at 09:10:07AM +0100, Tvrtko

Re: [Intel-gfx] [PATCH v3 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-23 Thread Niranjana Vishwanathapura
On Thu, Jun 23, 2022 at 12:28:32PM +0300, Lionel Landwerlin wrote: On 22/06/2022 18:12, Niranjana Vishwanathapura wrote: On Wed, Jun 22, 2022 at 09:10:07AM +0100, Tvrtko Ursulin wrote: On 22/06/2022 04:56, Niranjana Vishwanathapura wrote: VM_BIND and related uapi definitions v2: Reduce

Re: [Intel-gfx] [PATCH v6 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-25 Thread Niranjana Vishwanathapura
On Fri, Jun 24, 2022 at 10:07:26PM +0200, Daniel Vetter wrote: On Fri, Jun 24, 2022 at 10:49:36AM -0700, Niranjana Vishwanathapura wrote: VM_BIND and related uapi definitions v2: Reduce the scope to simple Mesa use case. v3: Expand VM_UNBIND documentation and add I915_GEM_VM_BIND

Re: [Intel-gfx] [PATCH v6 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-25 Thread Niranjana Vishwanathapura
On Sat, Jun 25, 2022 at 12:02:19PM -0700, Niranjana Vishwanathapura wrote: On Fri, Jun 24, 2022 at 10:07:26PM +0200, Daniel Vetter wrote: On Fri, Jun 24, 2022 at 10:49:36AM -0700, Niranjana Vishwanathapura wrote: VM_BIND and related uapi definitions v2: Reduce the scope to simple Mesa use

[PATCH v6 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-25 Thread Niranjana Vishwanathapura
completion documentation. Signed-off-by: Niranjana Vishwanathapura --- Documentation/gpu/rfc/i915_vm_bind.rst | 246 + Documentation/gpu/rfc/index.rst| 4 + 2 files changed, 250 insertions(+) create mode 100644 Documentation/gpu/rfc/i915_vm_bind.rst diff --git

[PATCH v6 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-25 Thread Niranjana Vishwanathapura
/unbind and versioning. Remove redundant vm_bind/unbind FENCE_VALID flag, execbuf3 batch_count field and I915_EXEC3_SECURE flag. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Daniel Vetter --- Documentation/gpu/rfc/i915_vm_bind.h | 280 +++ 1 file changed

[PATCH v7 0/3] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-06-25 Thread Niranjana Vishwanathapura
and versioning. Remove redundant vm_bind/unbind FENCE_VALID flag, execbuf3 batch_count field and I915_EXEC3_SECURE flag. Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (3): drm/doc/rfc: VM_BIND feature design document drm/i915: Update i915 uapi documentation drm/doc/rfc

[PATCH v6 2/3] drm/i915: Update i915 uapi documentation

2022-06-25 Thread Niranjana Vishwanathapura
Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Matthew Auld Reviewed-by: Daniel Vetter --- include/uapi/drm/i915_drm.h | 205 1 file changed

Re: [PATCH v6 2/3] drm/i915: Update i915 uapi documentation

2022-06-25 Thread Niranjana Vishwanathapura
On Fri, Jun 24, 2022 at 09:38:20PM +0200, Daniel Vetter wrote: On Fri, Jun 24, 2022 at 10:49:35AM -0700, Niranjana Vishwanathapura wrote: Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura

Re: [RFC 01/10] drm/i915/vm_bind: Introduce VM_BIND ioctl

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 12:32:14AM -0700, Hellstrom, Thomas wrote: On Wed, 2022-07-06 at 22:01 -0700, Niranjana Vishwanathapura wrote: > > + /** > > +* true: allow only vm_bind method of binding. > > +* false: allow only legacy execbuff

Re: [RFC 07/10] drm/i915/vm_bind: Handle persistent vmas in execbuf3

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 07:54:16AM -0700, Hellstrom, Thomas wrote: On Fri, 2022-07-01 at 15:50 -0700, Niranjana Vishwanathapura wrote: Handle persistent (VM_BIND) mappings during the request submission in the execbuf3 path. Signed-off-by: Niranjana Vishwanathapura --- .../gpu/drm/i915/gem

Re: [RFC 02/10] drm/i915/vm_bind: Bind and unbind mappings

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 10:14:38AM +0200, Thomas Hellström wrote: On Wed, 2022-07-06 at 22:43 -0700, Niranjana Vishwanathapura wrote: On Wed, Jul 06, 2022 at 06:21:03PM +0200, Thomas Hellström wrote: > On Fri, 2022-07-01 at 15:50 -0700, Niranjana Vishwanathapura wrote: > > Bind a

Re: [RFC 09/10] drm/i915/vm_bind: Skip vma_lookup for persistent vmas

2022-07-08 Thread Niranjana Vishwanathapura
On Tue, Jul 05, 2022 at 10:57:17AM +0200, Thomas Hellström wrote: On Fri, 2022-07-01 at 15:50 -0700, Niranjana Vishwanathapura wrote: vma_lookup is tied to segment of the object instead of section of VA space. Hence, it do not support aliasing (ie., multiple bindings to the same section

Re: [RFC 03/10] drm/i915/vm_bind: Support private and shared BOs

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 03:31:42AM -0700, Hellstrom, Thomas wrote: On Fri, 2022-07-01 at 15:50 -0700, Niranjana Vishwanathapura wrote: Add uapi allowing user to specify a BO as private to a specified VM during the BO creation. VM private BOs can only be mapped on the specified VM and can't

Re: [RFC 03/10] drm/i915/vm_bind: Support private and shared BOs

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 03:27:43PM +0200, Christian König wrote: Am 02.07.22 um 00:50 schrieb Niranjana Vishwanathapura: Add uapi allowing user to specify a BO as private to a specified VM during the BO creation. VM private BOs can only be mapped on the specified VM and can't be dma_buf

Re: [RFC 06/10] drm/i915/vm_bind: Add I915_GEM_EXECBUFFER3 ioctl

2022-07-08 Thread Niranjana Vishwanathapura
On Thu, Jul 07, 2022 at 07:41:54AM -0700, Hellstrom, Thomas wrote: On Fri, 2022-07-01 at 15:50 -0700, Niranjana Vishwanathapura wrote: Add new execbuf3 ioctl (I915_GEM_EXECBUFFER3) which only works in vm_bind mode. The vm_bind mode only works with this new execbuf3 ioctl. The new execbuf3

[PATCH v8 1/3] drm/doc/rfc: VM_BIND feature design document

2022-06-30 Thread Niranjana Vishwanathapura
completion documentation. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Daniel Vetter Acked-by: Paulo Zanoni --- Documentation/gpu/rfc/i915_vm_bind.rst | 245 + Documentation/gpu/rfc/index.rst| 4 + 2 files changed, 249 insertions(+) create mode 100644

[PATCH v8 2/3] drm/i915: Update i915 uapi documentation

2022-06-30 Thread Niranjana Vishwanathapura
Add some missing i915 upai documentation which the new i915 VM_BIND feature documentation will be refer to. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Matthew Auld Reviewed-by: Daniel Vetter --- include/uapi/drm/i915_drm.h | 205 1 file changed

[PATCH v8 3/3] drm/doc/rfc: VM_BIND uapi definition

2022-06-30 Thread Niranjana Vishwanathapura
/unbind and versioning. Remove redundant vm_bind/unbind FENCE_VALID flag, execbuf3 batch_count field and I915_EXEC3_SECURE flag. v8: Remove I915_GEM_VM_BIND_READONLY and minor documentation updates. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Daniel Vetter Acked-by: Paulo

[PATCH v8 0/3] drm/doc/rfc: i915 VM_BIND feature design + uapi

2022-06-30 Thread Niranjana Vishwanathapura
and versioning. Remove redundant vm_bind/unbind FENCE_VALID flag, execbuf3 batch_count field and I915_EXEC3_SECURE flag. v8: Remove I915_GEM_VM_BIND_READONLY and minor documentation updates. Signed-off-by: Niranjana Vishwanathapura Reviewed-by: Daniel Vetter Acked-by: Paulo Zanoni Niranjana

[RFC 03/10] drm/i915/vm_bind: Support private and shared BOs

2022-07-01 Thread Niranjana Vishwanathapura
object update in the execbuf path compared to non-private (shared) BOs. Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/gem/i915_gem_create.c| 41 ++- drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c| 6 +++ .../gpu/drm/i915/gem/i915_gem_object_types.h | 3

[RFC 02/10] drm/i915/vm_bind: Bind and unbind mappings

2022-07-01 Thread Niranjana Vishwanathapura
Bind and unbind the mappings upon VM_BIND and VM_UNBIND calls. Signed-off-by: Niranjana Vishwanathapura Signed-off-by: Prathap Kumar Valsan --- drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gem/i915_gem_create.c| 10 +- drivers/gpu/drm/i915/gem

[RFC 01/10] drm/i915/vm_bind: Introduce VM_BIND ioctl

2022-07-01 Thread Niranjana Vishwanathapura
-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/gem/i915_gem_context.c | 20 +- drivers/gpu/drm/i915/gem/i915_gem_context.h | 15 ++ drivers/gpu/drm/i915/gt/intel_gtt.h | 6 + drivers/gpu/drm/i915/i915_driver.c | 30 +++ drivers/gpu/drm/i915/i915_getparam.c| 3

[RFC 10/10] drm/i915/vm_bind: Fix vm->vm_bind_mutex and vm->mutex nesting

2022-07-01 Thread Niranjana Vishwanathapura
troy the vma outside vm->mutex while closing the 'vm'. Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/gt/intel_gtt.c | 23 ++- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gtt.c b/drivers/gpu/drm/i915/gt/in

[RFC 04/10] drm/i915/vm_bind: Add out fence support

2022-07-01 Thread Niranjana Vishwanathapura
Add support for handling out fence of vm_bind call. Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/gem/i915_gem_vm_bind.h | 2 + .../drm/i915/gem/i915_gem_vm_bind_object.c| 74 +++ drivers/gpu/drm/i915/i915_vma.c | 6 +- drivers/gpu/drm

[RFC 06/10] drm/i915/vm_bind: Add I915_GEM_EXECBUFFER3 ioctl

2022-07-01 Thread Niranjana Vishwanathapura
Add new execbuf3 ioctl (I915_GEM_EXECBUFFER3) which only works in vm_bind mode. The vm_bind mode only works with this new execbuf3 ioctl. The new execbuf3 ioctl will not have any execlist support and all the legacy support like relocations etc are removed. Signed-off-by: Niranjana

[RFC 07/10] drm/i915/vm_bind: Handle persistent vmas in execbuf3

2022-07-01 Thread Niranjana Vishwanathapura
Handle persistent (VM_BIND) mappings during the request submission in the execbuf3 path. Signed-off-by: Niranjana Vishwanathapura --- .../gpu/drm/i915/gem/i915_gem_execbuffer3.c | 176 +- 1 file changed, 175 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/gem

[RFC 08/10] drm/i915/vm_bind: userptr dma-resv changes

2022-07-01 Thread Niranjana Vishwanathapura
For persistent (vm_bind) vmas of userptr BOs, handle the user page pinning by using the i915_gem_object_userptr_submit_init() /done() functions Signed-off-by: Niranjana Vishwanathapura --- .../gpu/drm/i915/gem/i915_gem_execbuffer3.c | 67 +++ .../drm/i915/gem

[RFC 05/10] drm/i915/vm_bind: Handle persistent vmas

2022-07-01 Thread Niranjana Vishwanathapura
Treat VM_BIND vmas as persistent and handle them during the request submission in the execbuff path. Support eviction by maintaining a list of evicted persistent vmas for rebinding during next submission. Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm/i915/gem/i915_gem_object.c

[RFC 00/10] drm/i915/vm_bind: Add VM_BIND functionality

2022-07-01 Thread Niranjana Vishwanathapura
series is posted as, [RFC 0/5] vm_bind: Add VM_BIND validation support Signed-off-by: Niranjana Vishwanathapura Niranjana Vishwanathapura (10): drm/i915/vm_bind: Introduce VM_BIND ioctl drm/i915/vm_bind: Bind and unbind mappings drm/i915/vm_bind: Support private and shared BOs drm/i915

[RFC 09/10] drm/i915/vm_bind: Skip vma_lookup for persistent vmas

2022-07-01 Thread Niranjana Vishwanathapura
vma_lookup is tied to segment of the object instead of section of VA space. Hence, it do not support aliasing (ie., multiple bindings to the same section of the object). Skip vma_lookup for persistent vmas as it supports aliasing. Signed-off-by: Niranjana Vishwanathapura --- drivers/gpu/drm

Re: [RFC 03/10] drm/i915/vm_bind: Support private and shared BOs

2022-07-09 Thread Niranjana Vishwanathapura
On Fri, Jul 08, 2022 at 07:32:54PM +0200, Christian König wrote: Am 08.07.22 um 15:23 schrieb Niranjana Vishwanathapura: On Thu, Jul 07, 2022 at 03:27:43PM +0200, Christian König wrote: Am 02.07.22 um 00:50 schrieb Niranjana Vishwanathapura: Add uapi allowing user to specify a BO as private

  1   2   3   4   5   >