• Xiangliang.Yu's avatar
    drm/amdgpu: fix kernel hang when starting VNC server · d5a480b4
    Xiangliang.Yu authored
    After starting VNC server or running CTS test, kernel will hang and
    can see below call trace:
    
    [961816] INFO: task khugepaged:42 blocked for more than 120 seconds.
    [968581]       Tainted: G           OE   4.13.0 #1
    [973495] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables
              this message.
    [980962] khugepaged      D    0    42      2 0x00000000
    [980967] Call Trace:
    [980977]  __schedule+0x28d/0x890
    [980982]  schedule+0x36/0x80
    [980986]  rwsem_down_read_failed+0x139/0x1c0
    [980991]  ? update_curr+0x100/0x1c0
    [981004]  call_rwsem_down_read_failed+0x18/0x30
    [981007]  down_read+0x20/0x40
    [981012]  khugepaged_scan_mm_slot+0x78/0x1ac0
    [981018]  ? __switch_to+0x23e/0x4a0
    [981022]  ? finish_task_switch+0x79/0x240
    [981026]  khugepaged+0x146/0x480
    [981031]  ? remove_wait_queue+0x60/0x60
    [981035]  kthread+0x109/0x140
    [981037]  ? khugepaged_scan_mm_slot+0x1ac0/0x1ac0
    [981039]  ? kthread_park+0x60/0x60
    [981044]  ret_from_fork+0x25/0x30
    
    After checking code and found 'commit b72cf4fc ("drm/amdgpu: move
    taking mmap_sem into get_user_pages v2")' forget to drop one case of
    up_read.
    Signed-off-by: default avatarXiangliang.Yu <Xiangliang.Yu@amd.com>
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    d5a480b4
amdgpu_gem.c 21.7 KB