mirror_ubuntu-kernels/drivers/gpu/drm/amd/amdkfd
Philip Yang e7eb2137e8 drm/amdkfd: fix dma mapping leaking warning
For xnack off, restore work dma unmap previous system memory page, and
dma map the updated system memory page to update GPU mapping, this is
not dma mapping leaking, remove the WARN_ONCE for dma mapping leaking.

prange->dma_addr store the VRAM page pfn after the range migrated to
VRAM, should not dma unmap VRAM page when updating GPU mapping or
remove prange. Add helper svm_is_valid_dma_mapping_addr to check VRAM
page and error cases.

Mask out SVM_RANGE_VRAM_DOMAIN flag in dma_addr before calling amdgpu vm
update to avoid BUG_ON(*addr & 0xFFFF00000000003FULL), and set it again
immediately after. This flag is used to know the type of page later to
dma unmapping system memory page.

Fixes: 1d5dbfe6c0 ("drm/amdkfd: classify and map mixed svm range pages in GPU")
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2021-09-23 15:17:29 -04:00
..
cik_event_interrupt.c drm/amdkfd: Add kernel parameter to stop queue eviction on vm fault 2021-03-23 22:59:22 -04:00
cik_int.h
cik_regs.h
cwsr_trap_handler_gfx8.asm drm/amdkfd: Add aldebaran trap handler support 2021-03-10 00:02:24 -05:00
cwsr_trap_handler_gfx9.asm drm/amdkfd: Fix saving the ACC vgprs for Aldebaran 2021-03-23 22:56:55 -04:00
cwsr_trap_handler_gfx10.asm drm/amdkfd: Fix spurious debug exception on gfx10 2020-08-10 17:26:51 -04:00
cwsr_trap_handler.h drm/amdkfd: Fix saving the ACC vgprs for Aldebaran 2021-03-23 22:56:55 -04:00
Kconfig drm/amdkfd: Add CONFIG_HSA_AMD_SVM 2021-04-20 21:50:35 -04:00
kfd_chardev.c drm/amdkfd: Only apply heavy-weight TLB flush on Aldebaran 2021-08-02 17:21:25 -04:00
kfd_crat.c drm/amdkfd: enable cyan_skillfish KFD 2021-07-23 10:08:01 -04:00
kfd_crat.h
kfd_dbgdev.c drm/amdkfd: dqm fence memory corruption 2021-04-09 16:47:06 -04:00
kfd_dbgdev.h
kfd_dbgmgr.c
kfd_dbgmgr.h drm, iommu: Change type of pasid to u32 2020-09-17 19:21:16 +02:00
kfd_debugfs.c drm/amdkfd: Fix cat debugfs hang_hws file causes system crash bug 2021-04-09 16:42:11 -04:00
kfd_device_queue_manager_cik.c
kfd_device_queue_manager_v9.c drm/amdkfd: add xnack enabled flag to kfd_process 2021-04-20 21:47:41 -04:00
kfd_device_queue_manager_v10.c drm/amdkfd: Use same SQ prefetch setting as amdgpu 2020-10-21 23:06:07 -04:00
kfd_device_queue_manager_vi.c
kfd_device_queue_manager.c drm/amdkfd: CWSR with software scheduler 2021-08-11 17:19:54 -04:00
kfd_device_queue_manager.h drm/amdkfd: Renaming dqm->packets to dqm->packet_mgr 2021-07-23 10:07:59 -04:00
kfd_device.c drm/amdkfd: separate kfd_iommu_resume from kfd_resume 2021-09-14 15:59:46 -04:00
kfd_doorbell.c drm/amdkfd: Move process doorbell allocation into kfd device 2020-09-22 12:25:02 -04:00
kfd_events.c drm/amdkfd: fix a resource leakage issue 2021-05-19 22:44:12 -04:00
kfd_events.h drm, iommu: Change type of pasid to u32 2020-09-17 19:21:16 +02:00
kfd_flat_memory.c drm/amdkfd: enable cyan_skillfish KFD 2021-07-23 10:08:01 -04:00
kfd_int_process_v9.c drm/amdkfd: add sdma poison consumption handling 2021-06-07 14:57:24 -04:00
kfd_interrupt.c
kfd_iommu.c IOMMU Updates for Linux v5.13 2021-05-01 09:33:00 -07:00
kfd_iommu.h drm/amdkfd: fix build error with AMD_IOMMU_V2=m 2021-03-23 23:28:11 -04:00
kfd_kernel_queue.c drm/amdkfd: Enable over-subscription with >1 GWS queue 2020-04-28 16:20:30 -04:00
kfd_kernel_queue.h
kfd_migrate.c drm/amdkfd: Maintain svm_bo reference in page->zone_device_data 2021-07-01 00:05:41 -04:00
kfd_migrate.h drm/amdkfd: Add CONFIG_HSA_AMD_SVM 2021-04-20 21:50:35 -04:00
kfd_module.c drm/amdgpu: Fix handling of KFD initialization failures 2020-09-22 12:24:11 -04:00
kfd_mqd_manager_cik.c drm/amdkfd: Check HIQ's MQD for queue preemption status 2021-03-23 22:59:25 -04:00
kfd_mqd_manager_v9.c drm/amdkfd: Check HIQ's MQD for queue preemption status 2021-03-23 22:59:25 -04:00
kfd_mqd_manager_v10.c drm/amdkfd: Check HIQ's MQD for queue preemption status 2021-03-23 22:59:25 -04:00
kfd_mqd_manager_vi.c drm/amdkfd: Check HIQ's MQD for queue preemption status 2021-03-23 22:59:25 -04:00
kfd_mqd_manager.c drm/amdkfd: Account for SH/SE count when setting up cu masks. 2021-08-26 13:56:01 -04:00
kfd_mqd_manager.h drm/amdkfd: Account for SH/SE count when setting up cu masks. 2021-08-26 13:56:01 -04:00
kfd_packet_manager_v9.c drm/amdkfd: add per-vmid-debug map_process_support 2021-04-23 17:16:05 -04:00
kfd_packet_manager_vi.c drm/amdkfd: dqm fence memory corruption 2021-04-09 16:47:06 -04:00
kfd_packet_manager.c drm/amdkfd: enable cyan_skillfish KFD 2021-07-23 10:08:01 -04:00
kfd_pasid.c drm, iommu: Change type of pasid to u32 2020-09-17 19:21:16 +02:00
kfd_pm4_headers_ai.h
kfd_pm4_headers_aldebaran.h drm/amdkfd: add per-vmid-debug map_process_support 2021-04-23 17:16:05 -04:00
kfd_pm4_headers_diq.h
kfd_pm4_headers_vi.h
kfd_pm4_headers.h
kfd_pm4_opcodes.h
kfd_priv.h drm/amdkfd: make needs_pcie_atomics FW-version dependent 2021-09-14 15:56:50 -04:00
kfd_process_queue_manager.c drm/amdkfd: fix sysfs kobj leak 2021-06-30 00:18:23 -04:00
kfd_process.c Revert "Revert "drm/amdkfd: Make TLB flush conditional on mapping"" 2021-08-02 17:21:24 -04:00
kfd_queue.c
kfd_smi_events.c drm/amdkfd: Update SMI throttle event bitmask 2021-07-23 10:08:00 -04:00
kfd_smi_events.h drm/amdkfd: Update SMI throttle event bitmask 2021-07-23 10:08:00 -04:00
kfd_svm.c drm/amdkfd: fix dma mapping leaking warning 2021-09-23 15:17:29 -04:00
kfd_svm.h drm/amdkfd: check access permisson to restore retry fault 2021-08-24 15:36:50 -04:00
kfd_topology.c drm/amdkfd: Expose GFXIP engine version to sysfs 2021-08-05 21:18:00 -04:00
kfd_topology.h drm/amdkfd: Expose GFXIP engine version to sysfs 2021-08-05 21:18:00 -04:00
Makefile drm/amdkfd: Add CONFIG_HSA_AMD_SVM 2021-04-20 21:50:35 -04:00
soc15_int.h drm/amdkfd: add sdma poison consumption handling 2021-06-07 14:57:24 -04:00