• Jay Cornwall's avatar
    drm/amdkfd: Relocate TBA/TMA to opposite side of VM hole · 96c211f1
    Jay Cornwall authored
    The TBA and TMA, along with an unused IB allocation, reside at low
    addresses in the VM address space. A stray VM fault which hits these
    pages must be serviced by making their page table entries invalid.
    The scheduler depends upon these pages being resident and fails,
    preventing a debugger from inspecting the failure state.
    
    By relocating these pages above 47 bits in the VM address space they
    can only be reached when bits [63:48] are set to 1. This makes it much
    less likely for a misbehaving program to generate accesses to them.
    The current placement at VA (PAGE_SIZE*2) is readily hit by a NULL
    access with a small offset.
    Signed-off-by: default avatarJay Cornwall <jay.cornwall@amd.com>
    Reviewed-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    96c211f1
kfd_flat_memory.c 16.8 KB