• Yintian Tao's avatar
    drm/amdgpu: put flush_delayed_work at first · c0e21ea1
    Yintian Tao authored
    There is one regression from 042f3d7b745cd76aa
    To put flush_delayed_work after adev->shutdown = true
    which will make amdgpu_ih_process not response the irq
    At last, all ib ring tests will be failed just like below
    
    [drm] amdgpu: finishing device.
    [drm] Fence fallback timer expired on ring gfx
    [drm] Fence fallback timer expired on ring comp_1.0.0
    [drm] Fence fallback timer expired on ring comp_1.1.0
    [drm] Fence fallback timer expired on ring comp_1.2.0
    [drm] Fence fallback timer expired on ring comp_1.3.0
    [drm] Fence fallback timer expired on ring comp_1.0.1
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on comp_1.1.1 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on comp_1.2.1 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on comp_1.3.1 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on sdma0 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on sdma1 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on uvd_enc_0.0 (-110).
    amdgpu 0000:00:07.0: [drm:amdgpu_ib_ring_tests [amdgpu]] *ERROR* IB test failed on vce0 (-110).
    [drm:amdgpu_device_delayed_init_work_handler [amdgpu]] *ERROR* ib ring test failed (-110).
    
    v2: replace cancel_delayed_work_sync() with flush_delayed_work()
    Signed-off-by: default avatarYintian Tao <yttao@amd.com>
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    c0e21ea1
amdgpu_device.c 115 KB