[Intel-xe] [PATCH 00/22] TLB Invalidation

Niranjana Vishwanathapura niranjana.vishwanathapura at intel.com
Thu Feb 9 04:59:43 UTC 2023


On Wed, Feb 08, 2023 at 08:54:04PM -0800, Niranjana Vishwanathapura wrote:
>On Wed, Feb 08, 2023 at 12:27:01PM -0500, Rodrigo Vivi wrote:
>>On Mon, Feb 06, 2023 at 02:39:33PM -0800, Niranjana Vishwanathapura wrote:
>>>On Fri, Feb 03, 2023 at 03:23:47PM -0500, Rodrigo Vivi wrote:
>>>> Let's just confirm the reviews on this patch and get them
>>>> merged to drm-xe-next.
>>>>
>>>> Matthew Brost (22):
>>>>  drm/xe: Don't process TLB invalidation done in CT fast-path
>>>>  drm/xe: Break of TLB invalidation into its own file
>>>>  drm/xe: Move TLB invalidation variable to own sub-structure in GT
>>>>  drm/xe: Add TLB invalidation fence
>>>>  drm/xe: Invalidate TLB after unbind is complete
>>>>  drm/xe: Kernel doc GT TLB invalidations
>>>>  drm/xe: Add TLB invalidation fence ftrace
>>>>  drm/xe: Fix build for CONFIG_DRM_XE_DEBUG
>>>>  drm/xe: Add TDR for invalidation fence timeout cleanup
>>>>  drm/xe: Only set VM->asid for platforms that support a ASID
>>>>  drm/xe: Delete debugfs entry to issue TLB invalidation
>>>>  drm/xe: Add has_range_tlb_invalidation device attribute
>>>>  drm/xe: Add range based TLB invalidations
>>>>  drm/xe: Propagate error from bind operations to async fence
>>>>  drm/xe: Use GuC to do GGTT invalidations for the GuC firmware
>>>>  drm/xe: Coalesce GGTT invalidations
>>>>  drm/xe: Lock GGTT on when restoring kernel BOs
>>>>  drm/xe: Propagate VM unbind error to invalidation fence
>>>>  drm/xe: Signal invalidation fence immediately if CT send fails
>>>>  drm/xe: Add has_asid to device info
>>>>  drm/xe: Add TLB invalidation fence after rebinds issued from execs
>>>>  drm/xe: Drop TLB invalidation from ring operations
>>>>
>>>
>>>Looks good to me.
>>>Some minor comments on patch ordering.
>>>Patch #8 can be merged with #10
>>
>>did you mean squashed together?
>>but why 8 and 10? 8 is a build fix, so I'd assume the issue
>>happened in a previous patch, not in patch 10.
>>
>>08 - drm/xe: Fix build for CONFIG_DRM_XE_DEBUG
>>10 - drm/xe: Only set VM->asid for platforms that support a ASID
>>
>
>Sorry, I meant #8 and #11. Most of the change in #8 is removed by
>patch #11. So, #8 can be squashed with #11.
>
>>>Patch #10 can be simplified if we move #20 before patch #10
>>
>>indeed, but at this point I prefer to not touch them...
>>
>>>Patch #17 should probably put ahead of #16
>>
>>maybe a squash? but I will probably just leave it as is...
>>

Actually, in patch #16, we are adding a lockdep assert in xe_ggtt_map_bo(),
but lock is taken in patch #17. Hence the comment. But it should be fine
as it is a functional dependency and not a compile dependency.

>
>Ok,
>Niranjana
>
>>>
>>>In any case,
>>>Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura at intel.com>
>>
>>Thanks you so much
>>
>>>
>>>
>>>> drivers/gpu/drm/xe/Makefile                   |   1 +
>>>> drivers/gpu/drm/xe/xe_bo_evict.c              |   5 +-
>>>> drivers/gpu/drm/xe/xe_device.c                |  14 +
>>>> drivers/gpu/drm/xe/xe_device_types.h          |   4 +
>>>> drivers/gpu/drm/xe/xe_ggtt.c                  |  23 +-
>>>> drivers/gpu/drm/xe/xe_ggtt_types.h            |   2 +
>>>> drivers/gpu/drm/xe/xe_gt.c                    |  19 +
>>>> drivers/gpu/drm/xe/xe_gt.h                    |   1 +
>>>> drivers/gpu/drm/xe/xe_gt_debugfs.c            |  21 --
>>>> drivers/gpu/drm/xe/xe_gt_pagefault.c          | 104 +-----
>>>> drivers/gpu/drm/xe/xe_gt_pagefault.h          |   3 -
>>>> drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c   | 342 ++++++++++++++++++
>>>> drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h   |  26 ++
>>>> .../gpu/drm/xe/xe_gt_tlb_invalidation_types.h |  28 ++
>>>> drivers/gpu/drm/xe/xe_gt_types.h              |  41 ++-
>>>> drivers/gpu/drm/xe/xe_guc.c                   |   2 +
>>>> drivers/gpu/drm/xe/xe_guc_ct.c                |  10 +-
>>>> drivers/gpu/drm/xe/xe_guc_types.h             |   2 +
>>>> drivers/gpu/drm/xe/xe_lrc.c                   |   4 +-
>>>> drivers/gpu/drm/xe/xe_pci.c                   |   7 +
>>>> drivers/gpu/drm/xe/xe_pt.c                    | 130 +++++++
>>>> drivers/gpu/drm/xe/xe_ring_ops.c              |  40 +-
>>>> drivers/gpu/drm/xe/xe_trace.h                 |  55 +++
>>>> drivers/gpu/drm/xe/xe_uc.c                    |   9 +-
>>>> drivers/gpu/drm/xe/xe_uc.h                    |   1 +
>>>> drivers/gpu/drm/xe/xe_vm.c                    |  42 ++-
>>>> 26 files changed, 736 insertions(+), 200 deletions(-)
>>>> create mode 100644 drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c
>>>> create mode 100644 drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h
>>>> create mode 100644 drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h
>>>>
>>>> --
>>>> 2.39.1
>>>>


More information about the Intel-xe mailing list