[PATCH 0/6 v5] *** Dedicated vmid per process v5 ***

Christian König deathsimple at vodafone.de
Thu Apr 27 13:15:09 UTC 2017


Reviewed-by: Christian König <christian.koenig at amd.com> for patch #3 and #5.

Am 27.04.2017 um 15:09 schrieb Chunming Zhou:
> The current kernel implementation, which grabs the idle VMID from pool when emitting the job may:
>
>      The back-to-back submission from one process could use different VMID.
>      The submission to different queues from single process could use different VMID
>
> It works well in most case but cannot work for the SQ thread trace capture.
>
> The VMID for the submission that set the {SQTT}_BASE, which refers to the address of the trace buffer, is stored in shader engine.
>
> If the profiling application have to use different VMIDs to submit IBs in its life cycle:
>
>      Some trace is not captured since it actually uses different VMID to submit jobs.
>      Some part of captured trace may come from different application since they are accidentally uses the owner’s VMID to submit jobs.
>
> V2:
> 1. address Christian's comments:
> 	a. drop context flags for tag process, instead, add vm ioctl.
> 	b. change order of patches.
> 	c. sync waiting only when vm flush needs.
>
> 2. address Alex's comments;
> 	bump module version
>
> V3:
>    address Jerry and Christian's comments.
>    and only reserve gfxhub vmid
>
> v4:
>    address Jerry and Christian's comments.
>    fix some race condistions.
>
> v5:
>    patch#5: peek_fence instead of get_fence.
> 	   fix potential context starved.
>
> Chunming Zhou (6):
>    drm/amdgpu: add vm ioctl
>    drm/amdgpu: add reserved vmid field in vm struct v2
>    drm/amdgpu: reserve/unreserve vmid by vm ioctl v4
>    drm/amdgpu: add limitation for dedicated vm number v4
>    drm/amdgpu: implement grab reserved vmid V4
>    drm/amdgpu: bump module verion for reserved vmid
>
>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c |   3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c |   1 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c  | 159 +++++++++++++++++++++++++++++++-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h  |   6 ++
>   include/uapi/drm/amdgpu_drm.h           |  22 +++++
>   5 files changed, 185 insertions(+), 6 deletions(-)
>



More information about the amd-gfx mailing list