[git pull] amdkfd next 4.18

Oded Gabbay oded.gabbay at gmail.com
Mon May 14 07:01:26 UTC 2018


Hi Dave,

This is amdkfd pull for 4.18. The major new features are:

- Add support for GFXv9 dGPUs (VEGA)
- Add support for userptr memory mapping

In addition, there are a couple of small fixes and improvements, such as:
- Fix lock handling
- Fix rollback packet in kernel kfd_queue
- Optimize kfd signal handling
- Fix CP hang in APU

Thanks,
Oded

The following changes since commit 6d08b06e67cd117f6992c46611dfb4ce267cd71e:

  Linux 4.17-rc2 (2018-04-22 19:20:09 -0700)

are available in the Git repository at:

  git://people.freedesktop.org/~gabbayo/linux tags/drm-amdkfd-next-2018-05-14

for you to fetch changes up to af47b390273f1068bdb1d01263a81948c4e2f97a:

  drm/amdkfd: Remove vla (2018-04-13 14:24:12 -0700)

----------------------------------------------------------------
Ben Goz (1):
      drm/amdkfd: Locking PM mutex while allocating IB buffer

Dan Carpenter (1):
      drm/amdkfd: Integer overflows in ioctl

Felix Kuehling (29):
      drm/amdgpu: Add MMU notifier type for KFD userptr
      drm/amdgpu: Enable amdgpu_ttm_tt_get_user_pages in worker threads
      drm/amdgpu: Avoid reclaim while holding locks taken in MMU notifier
      drm/amdkfd: GFP_NOIO while holding locks taken in MMU notifier
      drm/amdkfd: Add quiesce_mm and resume_mm to kgd2kfd_calls
      drm/amdgpu: Add userptr support for KFD
      drm/amdgpu: Remove unused interface from kfd2kgd interface
      drm/amd: Update GFXv9 SDMA MQD structure
      drm/amdgpu: Add GFXv9 TLB invalidation packet definition
      drm/amdgpu: Add GFXv9 kfd2kgd interface functions
      drm/amdgpu: Add doorbell routing info to kgd2kfd_shared_resources
      drm/amdkfd: Make doorbell size ASIC-dependent
      drm/amdkfd: Implement doorbell allocation for SOC15
      drm/amdkfd: Move packet writer functions into ASIC-specific file
      drm/amdkfd: Add GFXv9 PM4 packet writer functions
      drm/amdkfd: Add GFXv9 MQD manager
      drm/amdkfd: Add GFXv9 device queue manager
      drm/amdkfd: Add SOC15 interrupt processing support
      drm/amdkfd: Fix goto usage
      drm/amdkfd: Fix kernel queue rollback_packet
      drm/amdkfd: Add 64-bit doorbell and wptr support to kernel queue
      drm/amdkfd: Remove limit on number of GPUs (follow-up)
      drm/amdkfd: Support flat memory apertures for GFXv9
      drm/amdkfd: Add GFXv9 CWSR trap handler
      drm/amdkfd: Add Vega10 topology and device info
      drm/amdkfd: Remove redundant include of amd-iommu.h
      drm/amdkfd: Fix signal handling performance again
      drm/amdkfd: Remove initialization of cp_hqd_ib_control on CIK
      drm/amdkfd: Add sanity checks in IRQ handlers

Harish Kasiviswanathan (1):
      drm/amdkfd: Clean up KFD_MMAP_ offset handling

Jay Cornwall (2):
      drm/amdkfd: Reduce priority of context-saving waves before spin-wait
      drm/amdkfd: Use volatile MTYPE in default/alternate apertures

Laura Abbott (1):
      drm/amdkfd: Remove vla

Oak Zeng (1):
      drm/amdkfd: Dump HQD of HIQ

Philip Yang (1):
      drm/amdkfd: use %px to print user space address instead of %p

Shaoyun Liu (1):
      drm/amdkfd: Remove queue node when destroy queue failed

Yong Zhao (2):
      drm/amdkfd: Separate trap handler assembly code and its hex values
      drm/amdkfd: Fix CP soft hang on APUs

welu (1):
      drm/amdkfd: Try to enable atomics for all GPUs

 MAINTAINERS                                        |    2 +
 drivers/gpu/drm/amd/amdgpu/Makefile                |    3 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c         |   26 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h         |   13 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c  |   10 -
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c  |   10 -
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c  | 1043 +++++++++++++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c   |  572 ++++++++-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c             |    2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c             |  111 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h             |   11 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c            |   38 +-
 drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c              |    1 +
 drivers/gpu/drm/amd/amdgpu/soc15d.h                |    5 +
 drivers/gpu/drm/amd/amdkfd/Makefile                |   10 +-
 drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c   |   20 +-
 drivers/gpu/drm/amd/amdkfd/cik_regs.h              |    3 +-
 drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h     |  560 +++++++++
 .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm  |  274 +----
 .../gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx9.asm  | 1214 ++++++++++++++++++++
 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c           |   52 +-
 drivers/gpu/drm/amd/amdkfd/kfd_crat.c              |   11 +
 drivers/gpu/drm/amd/amdkfd/kfd_device.c            |  131 ++-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c  |  114 +-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h  |    2 +
 .../drm/amd/amdkfd/kfd_device_queue_manager_v9.c   |   84 ++
 drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c          |   65 +-
 drivers/gpu/drm/amd/amdkfd/kfd_events.c            |    4 +-
 drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c       |  119 +-
 drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c    |   92 ++
 drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c         |    8 +-
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c      |   39 +-
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h      |    7 +-
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_cik.c  |    9 +
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c   |  340 ++++++
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_vi.c   |  319 +++++
 drivers/gpu/drm/amd/amdkfd/kfd_module.c            |    7 +
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c       |    3 +
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c   |    6 +-
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c    |  443 +++++++
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c    |    2 +-
 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c    |  392 ++-----
 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h    |  583 ++++++++++
 drivers/gpu/drm/amd/amdkfd/kfd_priv.h              |  112 +-
 drivers/gpu/drm/amd/amdkfd/kfd_process.c           |   50 +-
 .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c |   22 +-
 drivers/gpu/drm/amd/amdkfd/kfd_queue.c             |    8 +-
 drivers/gpu/drm/amd/amdkfd/kfd_topology.c          |    6 +
 drivers/gpu/drm/amd/amdkfd/kfd_topology.h          |    1 +
 drivers/gpu/drm/amd/amdkfd/soc15_int.h             |   47 +
 drivers/gpu/drm/amd/include/kgd_kfd_interface.h    |   26 +-
 drivers/gpu/drm/amd/include/v9_structs.h           |   48 +-
 52 files changed, 6222 insertions(+), 858 deletions(-)
 create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c
 create mode 100644 drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h
 create mode 100644 drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx9.asm
 create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v9.c
 create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_int_process_v9.c
 create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
 create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c
 create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h
 create mode 100644 drivers/gpu/drm/amd/amdkfd/soc15_int.h


More information about the amd-gfx mailing list