lkml.org 
[lkml]   [2019]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.0 27/99] drm/amdgpu: shadow in shadow_list without tbo.mem.start cause page fault in sriov TDR
    Date
    From: wentalou <Wentao.Lou@amd.com>

    [ Upstream commit b575f10dbd6f84c2c8744ff1f486bfae1e4f6f38 ]

    shadow was added into shadow_list by amdgpu_bo_create_shadow.
    meanwhile, shadow->tbo.mem was not fully configured.
    tbo.mem would be fully configured by amdgpu_vm_sdma_map_table until calling amdgpu_vm_clear_bo.
    If sriov TDR occurred between amdgpu_bo_create_shadow and amdgpu_vm_sdma_map_table,
    amdgpu_device_recover_vram would deal with shadow without tbo.mem.start.

    Signed-off-by: Wentao Lou <Wentao.Lou@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
    index 7ff3a28fc903..5336b2c9b615 100644
    --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
    +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
    @@ -3150,6 +3150,7 @@ static int amdgpu_device_recover_vram(struct amdgpu_device *adev)

    /* No need to recover an evicted BO */
    if (shadow->tbo.mem.mem_type != TTM_PL_TT ||
    + shadow->tbo.mem.start == AMDGPU_BO_INVALID_OFFSET ||
    shadow->parent->tbo.mem.mem_type != TTM_PL_VRAM)
    continue;

    --
    2.20.1
    \
     
     \ /
      Last update: 2019-05-07 08:07    [W:3.320 / U:0.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site