linux/drivers/gpu/drm/amd/amdkfd
Philip Yang 89cd9d23e9 drm/amdkfd: avoid HMM change cause circular lock
There is circular lock between gfx and kfd path with HMM change:
lock(dqm) -> bo::reserve -> amdgpu_mn_lock

To avoid this, move init/unint_mqd() out of lock(dqm), to remove nested
locking between mmap_sem and bo::reserve. The locking order
is: bo::reserve -> amdgpu_mn_lock(p->mn)

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2019-05-24 12:21:01 -05:00
..
cik_event_interrupt.c
cik_int.h
cik_regs.h
cwsr_trap_handler.h drm/amdkfd: Preserve ttmp[4:5] instead of ttmp[14:15] 2019-05-24 12:21:01 -05:00
cwsr_trap_handler_gfx8.asm drm/amdkfd: Fix gfx8 MEM_VIOL exception handler 2019-05-24 12:21:01 -05:00
cwsr_trap_handler_gfx9.asm drm/amdkfd: Preserve ttmp[4:5] instead of ttmp[14:15] 2019-05-24 12:21:01 -05:00
Kconfig drm/amdkfd: Allow building KFD on ARM64 (v2) 2019-01-14 15:59:37 -05:00
kfd_chardev.c drm/amdkfd: Cosmetic cleanup 2019-05-24 12:20:48 -05:00
kfd_crat.c drm/amdkfd: Adjust weight to represent num_hops info when report xgmi iolink 2019-05-24 12:20:48 -05:00
kfd_crat.h drm/amdkfd: Adjust weight to represent num_hops info when report xgmi iolink 2019-05-24 12:20:48 -05:00
kfd_dbgdev.c
kfd_dbgdev.h
kfd_dbgmgr.c
kfd_dbgmgr.h
kfd_debugfs.c
kfd_device.c drm/amdkfd: Fix compute profile switching 2019-05-24 12:21:01 -05:00
kfd_device_queue_manager.c drm/amdkfd: avoid HMM change cause circular lock 2019-05-24 12:21:01 -05:00
kfd_device_queue_manager.h drm/amdkfd: Use 64 bit sdma_bitmap 2019-05-24 12:21:01 -05:00
kfd_device_queue_manager_cik.c
kfd_device_queue_manager_v9.c
kfd_device_queue_manager_vi.c
kfd_doorbell.c
kfd_events.c drm/amdkfd: Cosmetic cleanup 2019-05-24 12:20:48 -05:00
kfd_events.h
kfd_flat_memory.c drm/amdkfd: Cosmetic cleanup 2019-05-24 12:20:48 -05:00
kfd_int_process_v9.c
kfd_interrupt.c
kfd_iommu.c
kfd_iommu.h
kfd_kernel_queue.c
kfd_kernel_queue.h
kfd_kernel_queue_cik.c
kfd_kernel_queue_v9.c
kfd_kernel_queue_vi.c
kfd_module.c drm/amdgpu: Remove kgd2kfd function pointers 2019-01-14 15:04:29 -05:00
kfd_mqd_manager.c
kfd_mqd_manager.h
kfd_mqd_manager_cik.c drm/amdkfd: use init_mqd function to allocate object for hid_mqd (CI) 2019-02-27 22:19:07 -05:00
kfd_mqd_manager_v9.c
kfd_mqd_manager_vi.c drm/amdkfd: Cosmetic cleanup 2019-05-24 12:20:48 -05:00
kfd_packet_manager.c
kfd_pasid.c
kfd_pm4_headers.h
kfd_pm4_headers_ai.h
kfd_pm4_headers_diq.h
kfd_pm4_headers_vi.h
kfd_pm4_opcodes.h
kfd_priv.h drm/amdkfd: Fix compute profile switching 2019-05-24 12:21:01 -05:00
kfd_process.c drm/amdkfd: Fix bugs regarding CP queue doorbell mask on SOC15 2019-02-18 18:00:41 -05:00
kfd_process_queue_manager.c
kfd_queue.c
kfd_topology.c pci-v5.2-changes 2019-05-14 10:30:10 -07:00
kfd_topology.h drm/amdkfd: add RAS capabilities in topology for Vega20 (v2) 2019-03-19 15:36:51 -05:00
Makefile
soc15_int.h