mbox series

[PULL] drm-xe-fixes

Message ID tizan6wdpxu4ayudeikjglxdgzmnhdzj3li3z2pgkierjtozzw@lbfddeg43a7h (mailing list archive)
State New
Headers show
Series [PULL] drm-xe-fixes | expand

Pull-request

https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2024-04-04

Message

Lucas De Marchi April 4, 2024, 2:49 p.m. UTC
Hi Dave and Sima,

Please pull the drm-xe-fixes for this week targeting v6.9-rc3.

This is a little late in the week as I was waiting a critical fix to be
applied to get our CI back. This is mainly due to some stress tests
creating hundreds of exec queues and that not playing nice with the
workqueue changes introduced in v6.9. That shouldn't be the normal use
case but was causing CI to abort further tests.  Other changes include
fixes around rebinding and TLB invalidation.

thanks
Lucas De Marchi

drm-xe-fixes-2024-04-04:
- Stop using system_unbound_wq for preempt fences,
   as this can cause starvation when reaching more
   than max_active defined by workqueue
- Fix saving unordered rebinding fences by attaching
   them as kernel feces to the vm's resv
- Fix TLB invalidation fences completing out of order
- Move rebind TLB invalidation to the ring ops to reduce
   the latency
The following changes since commit 39cd87c4eb2b893354f3b850f916353f2658ae6f:

   Linux 6.9-rc2 (2024-03-31 14:32:39 -0700)

are available in the Git repository at:

   https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2024-04-04

for you to fetch changes up to 77a011012d7d8b98368a763bf74317c6d5ce00f1:

   drm/xe: Use ordered wq for preempt fence waiting (2024-04-04 08:32:34 -0500)

----------------------------------------------------------------
- Stop using system_unbound_wq for preempt fences,
   as this can cause starvation when reaching more
   than max_active defined by workqueue
- Fix saving unordered rebinding fences by attaching
   them as kernel feces to the vm's resv
- Fix TLB invalidation fences completing out of order
- Move rebind TLB invalidation to the ring ops to reduce
   the latency

----------------------------------------------------------------
Matthew Brost (1):
       drm/xe: Use ordered wq for preempt fence waiting

Thomas Hellström (4):
       drm/xe: Use ring ops TLB invalidation for rebinds
       drm/xe: Rework rebinding
       drm/xe: Make TLB invalidation fences unordered
       drm/xe: Move vma rebinding to the drm_exec locking loop

  drivers/gpu/drm/xe/xe_device.c              |  11 ++-
  drivers/gpu/drm/xe/xe_device_types.h        |   3 +
  drivers/gpu/drm/xe/xe_exec.c                |  79 ++------------------
  drivers/gpu/drm/xe/xe_exec_queue_types.h    |   5 ++
  drivers/gpu/drm/xe/xe_gt_pagefault.c        |   3 +-
  drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c |   1 -
  drivers/gpu/drm/xe/xe_gt_types.h            |   7 --
  drivers/gpu/drm/xe/xe_preempt_fence.c       |   2 +-
  drivers/gpu/drm/xe/xe_pt.c                  |  25 +++++--
  drivers/gpu/drm/xe/xe_ring_ops.c            |  11 +--
  drivers/gpu/drm/xe/xe_sched_job.c           |  10 +++
  drivers/gpu/drm/xe/xe_sched_job_types.h     |   2 +
  drivers/gpu/drm/xe/xe_vm.c                  | 110 +++++++++++++++++-----------
  drivers/gpu/drm/xe/xe_vm.h                  |   8 +-
  drivers/gpu/drm/xe/xe_vm_types.h            |   8 +-
  15 files changed, 140 insertions(+), 145 deletions(-)