Unable to get freesync working with AMD-Pro drivers on Ubuntu

Hello,

 

I cannot, for the life of me, get freesync working at all on my machine. This is a RX580, 8GB, which other than Freesync seems to be behaving without issue.

 

I have the following setups:

OpenSuse Tumbleweed with the DC patched kernel. Admittedly I don't expect support on this one.

Ubuntu with the AMD-Pro packages, which I do expect to work.

 

On both setups I have tried:

Enabling freesync:

$ DISPLAY=:0 xrandr --output DisplayPort-0 --set "freesync" 1

And then testing the setting took hold:

$ DISPLAY=:0 xrandr --prop

Gives me the following output:

Screen 0: minimum 320 x 200, current 2560 x 1440, maximum 16384 x 16384

DisplayPort-0 connected primary 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm

    EDID:

        00ffffffffffff000469a8273e210200

        211a0104a53c22783ba595a65650a026

        0d5054bfef00714f95008180d1c00101

        010101010101e8e40050a0a067500820

        980455502100001e565e00a0a0a02950

        3020350055502100001e000000fd0028

        90dede3c010a202020202020000000fc

        0041535553204d473237380a20200158

        02031e714b1213041f900e0f1d1e0514

        230917078301000065030c001000e8e4

        0050a0a067500820980455502100001e

        909b0050a0a046500820880c55502100

        001e662156aa51001e30468f33005550

        2100001e565e00a0a0a0295030203500

        55502100001e87bc0050a0a055500820

        780055502100001e0000000000000056

    freesync_capable: 1

        range: (0, 1)

    freesync: 1

        range: (0, 1)

 

The "freesync: 1" would suggest I have now enabled freesync.

 

However, when turning on the FPS counter in the monitor on, I see it locked steady at "144", meaning that freesync is not functioning. I am within the freesync range of the monitor (A Asus MG278Q, if that matters) of 40-144hz, so it should be working.

 

When booting into Windows, I have successfully got Freesync working when playing GTA 5; I see the FPS counter provided by the monitor going up and down. So I can rule out a hardware issue.

 

I have set forced VSync on with the amdrc file in a bid to fix this, to no avail:

$ cat /etc/amd/amdrc

<OpenGL>

  <!-- Enable VSYNC -->

  <!-- 0: always off -->

  <!-- 1: app preference (default off) -->

  <!-- 2: app preference (default on) -->

  <!-- 3: always on -->

  <!-- 4: always auto -->

  <OGLWaitVerticalSync>3</OGLWaitVerticalSync>

</OpenGL>

 

Current kernel on the Ubuntu machine:

$ uname -a

     Linux colossus 4.8.0-54-generic #57~16.04.1-Ubuntu SMP Wed May 24 16:22:28 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

 

amdgpu-pro version:

$ dpkg -l amdgpu-pro

Desired=Unknown/Install/Remove/Purge/Hold

| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend

|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)

||/ Name                         Version             Architecture        Description

+++-============================-===================-===================-=============================================================

ii  amdgpu-pro                   17.10-429170        amd64               Meta package to install amdgpu Pro components.

 

Interesting glxinfo bits:

$ glxinfo

name of display: :0

display: :0  screen: 0

direct rendering: Yes

server glx vendor string: AMD

server glx version string: 1.4

server glx extensions:

    GLX_ARB_create_context, GLX_ARB_create_context_profile,

    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,

    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB,

    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,

    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,

    GLX_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig,

    GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_swap_control

client glx vendor string: AMD

client glx version string: 1.4

client glx extensions:

    GLX_ARB_context_flush_control, GLX_ARB_create_context,

    GLX_ARB_create_context_profile, GLX_ARB_create_context_robustness,

    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB,

    GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_buffer_age,

    GLX_EXT_create_context_es2_profile, GLX_EXT_fbconfig_packed_float,

    GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context,

    GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,

    GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, GLX_MESA_query_renderer,

    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,

    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,

    GLX_SGI_swap_control, GLX_SGI_video_sync

GLX version: 1.4

GLX extensions:

    GLX_ARB_context_flush_control, GLX_ARB_create_context,

    GLX_ARB_create_context_profile, GLX_ARB_fbconfig_float,

    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,

    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB,

    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,

    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,

    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,

    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,

    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,

    GLX_SGI_swap_control, GLX_SGI_video_sync

OpenGL vendor string: Advanced Micro Devices, Inc.

OpenGL renderer string: Radeon RX 580 Series

OpenGL core profile version string: 4.5.13474 Core Profile Context 17.10.2

OpenGL core profile shading language version string: 4.50

OpenGL core profile context flags: (none)

OpenGL core profile profile mask: core profile

 

Please assist, I'm at a loss as to what is wrong here. I'm unsure how to even begin debugging this!