mbox series

[v3,0/3] drm/xe: switch to using drm_exec

Message ID 20230419175650.3259121-1-francois.dugast@intel.com (mailing list archive)
Headers show
Series drm/xe: switch to using drm_exec | expand

Message

Francois Dugast April 19, 2023, 5:56 p.m. UTC
This makes Xe use the new drm_exec helpers provided by this series,
which is not merged yet:
https://patchwork.freedesktop.org/series/114464/

with this fix:
https://patchwork.freedesktop.org/patch/530670/?series=112994&rev=4

v3 includes code shared by Matthew Brost.

v2: add a first patch with squashed dependencies (Lucas De Marchi)
v3:
  - remove "RFC"
  - add dependencies as original patches
  - move drm_exec calls to xe_vm_lock_dma_resv/xe_vm_unlock_dma_resv,
    use new helper functions xe_vm_bo_lock/xe_vm_bo_unlock, fixes in
    drm_exec calls (Matthew Brost)

Christian König (1):
  drm: execution context for GEM buffers v3

Danilo Krummrich (1):
  drm_exec: fix double dma_resv unlock

Francois Dugast (1):
  drm/xe: switch to using drm_exec

 Documentation/gpu/drm-mm.rst         |  12 ++
 drivers/gpu/drm/Kconfig              |   6 +
 drivers/gpu/drm/Makefile             |   2 +
 drivers/gpu/drm/drm_exec.c           | 248 +++++++++++++++++++++++
 drivers/gpu/drm/xe/Kconfig           |   1 +
 drivers/gpu/drm/xe/tests/xe_bo.c     |  17 +-
 drivers/gpu/drm/xe/xe_bo.c           |  29 +--
 drivers/gpu/drm/xe/xe_bo.h           |   6 +-
 drivers/gpu/drm/xe/xe_bo_evict.c     |  24 ++-
 drivers/gpu/drm/xe/xe_bo_types.h     |   1 -
 drivers/gpu/drm/xe/xe_exec.c         |  30 +--
 drivers/gpu/drm/xe/xe_gt_pagefault.c |  56 +-----
 drivers/gpu/drm/xe/xe_vm.c           | 287 +++++++++++++--------------
 drivers/gpu/drm/xe/xe_vm.h           |  29 +--
 drivers/gpu/drm/xe/xe_vm_madvise.c   |  36 ++--
 include/drm/drm_exec.h               | 115 +++++++++++
 16 files changed, 615 insertions(+), 284 deletions(-)
 create mode 100644 drivers/gpu/drm/drm_exec.c
 create mode 100644 include/drm/drm_exec.h

Comments

Matthew Brost April 19, 2023, 11:52 p.m. UTC | #1
On Wed, Apr 19, 2023 at 07:56:47PM +0200, Francois Dugast wrote:
> This makes Xe use the new drm_exec helpers provided by this series,
> which is not merged yet:
> https://patchwork.freedesktop.org/series/114464/
> 
> with this fix:
> https://patchwork.freedesktop.org/patch/530670/?series=112994&rev=4
> 
> v3 includes code shared by Matthew Brost.
> 
> v2: add a first patch with squashed dependencies (Lucas De Marchi)
> v3:
>   - remove "RFC"
>   - add dependencies as original patches
>   - move drm_exec calls to xe_vm_lock_dma_resv/xe_vm_unlock_dma_resv,
>     use new helper functions xe_vm_bo_lock/xe_vm_bo_unlock, fixes in
>     drm_exec calls (Matthew Brost)
> 

For this series in general I'd personally be inclined to include it in
the merge of [1] as the large GPUVA change isn't going to apply after
this series as GPUVA is really invasive / rebase is non-trival. Also
based on a coversation with dakr [2] [3], we probably want to move some
of our locking helpers to GPUVA + do not build DRM EXEC as a module.

Matt

[1] https://gitlab.freedesktop.org/drm/xe/kernel/-/merge_requests/340
[2] https://gitlab.freedesktop.org/drm/xe/kernel/-/merge_requests/340#note_1875039
[3] https://gitlab.freedesktop.org/nouvelles/kernel/-/tree/wip-gpuva?ref_type=heads

> Christian König (1):
>   drm: execution context for GEM buffers v3
> 
> Danilo Krummrich (1):
>   drm_exec: fix double dma_resv unlock
> 
> Francois Dugast (1):
>   drm/xe: switch to using drm_exec
> 
>  Documentation/gpu/drm-mm.rst         |  12 ++
>  drivers/gpu/drm/Kconfig              |   6 +
>  drivers/gpu/drm/Makefile             |   2 +
>  drivers/gpu/drm/drm_exec.c           | 248 +++++++++++++++++++++++
>  drivers/gpu/drm/xe/Kconfig           |   1 +
>  drivers/gpu/drm/xe/tests/xe_bo.c     |  17 +-
>  drivers/gpu/drm/xe/xe_bo.c           |  29 +--
>  drivers/gpu/drm/xe/xe_bo.h           |   6 +-
>  drivers/gpu/drm/xe/xe_bo_evict.c     |  24 ++-
>  drivers/gpu/drm/xe/xe_bo_types.h     |   1 -
>  drivers/gpu/drm/xe/xe_exec.c         |  30 +--
>  drivers/gpu/drm/xe/xe_gt_pagefault.c |  56 +-----
>  drivers/gpu/drm/xe/xe_vm.c           | 287 +++++++++++++--------------
>  drivers/gpu/drm/xe/xe_vm.h           |  29 +--
>  drivers/gpu/drm/xe/xe_vm_madvise.c   |  36 ++--
>  include/drm/drm_exec.h               | 115 +++++++++++
>  16 files changed, 615 insertions(+), 284 deletions(-)
>  create mode 100644 drivers/gpu/drm/drm_exec.c
>  create mode 100644 include/drm/drm_exec.h
> 
> -- 
> 2.25.1
>