• Philip Yang's avatar
    drm/amdkfd: svm range always mapped flag not working on APU · ebab8c3e
    Philip Yang authored
    On gfx943 APU there is no VRAM and page migration, queue CWSR area, svm
    range with always mapped flag, is not mapped to GPU correctly. This
    works fine if retry fault on CWSR area can be recovered, but could cause
    deadlock if there is another retry fault recover waiting for CWSR to
    finish.
    
    Fix this by mapping svm range with always mapped flag to GPU with ACCESS
    attribute if XNACK ON.
    
    There is side effect, because all GPUs have ACCESS attribute by default
    on new svm range with XNACK on, the CWSR area will be mapped to all GPUs
    after this change. This side effect will be fixed with Thunk change to
    set CWSR svm range with ACCESS_IN_PLACE attribute on the GPU that user
    queue is created.
    Signed-off-by: default avatarPhilip Yang <Philip.Yang@amd.com>
    Reviewed-by: default avatarFelix Kuehling <felix.kuehling@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    ebab8c3e
kfd_svm.c 114 KB