• Alex Deucher's avatar
    drm/amdgpu: fix a race in GPU reset with IB test (v2) · beff74bc
    Alex Deucher authored
    Split late_init into two functions, one (do_late_init) which
    just does the hw init, and late_init which calls do_late_init
    and schedules the IB test work.  Call do_late_init in
    the GPU reset code to run the init code, but not schedule
    the IB test code.  The IB test code is called directly
    in the gpu reset code so no need to run the IB tests
    in a separate work thread.  If we do, we end up racing.
    
    v2: Rework late_init.  Pull out the mgpu fan boost and xgmi
    pstate code into late_init so they get called in all cases.
    rename the late_init worker thread to delayed work since it's
    just the IB tests now which can happen later.  Schedule the
    work at init and resume time.  It's not needed at reset time
    because the IB tests are called directly.
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    Cc: Xinhui Pan <xinhui.pan@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    beff74bc
amdgpu.h 35.8 KB