[PATCH 00/25] Add KFD GPUVM support for dGPUs v2
Felix Kuehling
Felix.Kuehling at amd.com
Wed Feb 7 01:32:29 UTC 2018
Changes since v1:
* Rebased
* Several fixes
* Conditional IOMMU change carried over from previous patch series and updated
AMDGPU:
Patches 1-5 are minor cleanups and fixes
Patches 6-10 add and implement KFD->KGD interfaces for GPUVM
AMDKFD:
Patch 11: Make IOMMU conditional (carried over from previous patch series)
Patch 12-13: small fixes
Patches 14-25 add all the GPUVM memory management functionality
Felix Kuehling (22):
drm/amdgpu: remove useless BUG_ONs
drm/amdgpu: Fix header file dependencies
drm/amdgpu: Fix wrong mask in get_atc_vmid_pasid_mapping_pasid
drm/amdgpu: Remove unused kfd2kgd interface
drm/amdgpu: Add KFD eviction fence
drm/amdgpu: Update kgd2kfd_shared_resources for dGPU support
drm/amdgpu: add amdgpu_sync_clone
drm/amdgpu: Add GPUVM memory management functions for KFD
drm/amdgpu: Add submit IB function for KFD
drm/amdkfd: Centralize IOMMUv2 code and make it conditional
drm/amdkfd: Use per-device sched_policy
drm/amdkfd: Add GPUVM virtual address space to PDD
drm/amdkfd: Implement KFD process eviction/restore
uapi: Fix type used in ioctl parameter structures
drm/amdkfd: Remove limit on number of GPUs
drm/amdkfd: Aperture setup for dGPUs
drm/amdkfd: Add per-process IDR for buffer handles
drm/amdkfd: Allocate CWSR trap handler memory for dGPUs
drm/amdkfd: Add TC flush on VMID deallocation for Hawaii
drm/amdkfd: Add ioctls for GPUVM memory management
drm/amdkfd: Kmap event page for dGPUs
drm/amdkfd: Add module option for testing large-BAR functionality
Harish Kasiviswanathan (1):
drm/amdkfd: Remove unaligned memory access
Oak Zeng (1):
drm/amdkfd: Populate DRM render device minor
Yong Zhao (1):
drm/amdgpu: Replace kgd_mem with amdgpu_bo for kernel pinned gtt mem
drivers/gpu/drm/amd/amdgpu/Makefile | 2 +
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 128 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 112 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c | 179 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 80 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 82 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 1501 ++++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 4 +
drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 2 +
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 6 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 56 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h | 1 +
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 25 +
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 1 +
drivers/gpu/drm/amd/amdkfd/Kconfig | 2 +-
drivers/gpu/drm/amd/amdkfd/Makefile | 4 +
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 484 +++++++
drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 17 +-
drivers/gpu/drm/amd/amdkfd/kfd_device.c | 192 ++-
.../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 288 +++-
.../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 9 +
drivers/gpu/drm/amd/amdkfd/kfd_events.c | 34 +-
drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 59 +-
drivers/gpu/drm/amd/amdkfd/kfd_iommu.c | 356 +++++
drivers/gpu/drm/amd/amdkfd/kfd_iommu.h | 78 +
drivers/gpu/drm/amd/amdkfd/kfd_module.c | 7 +
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c | 9 +-
drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c | 6 +-
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 37 +
drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 91 +-
drivers/gpu/drm/amd/amdkfd/kfd_process.c | 599 ++++++--
drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 20 +-
drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 7 +-
drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 101 +-
include/uapi/linux/kfd_ioctl.h | 87 +-
35 files changed, 4280 insertions(+), 386 deletions(-)
create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c
create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_iommu.c
create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_iommu.h
--
2.7.4
More information about the amd-gfx
mailing list