You are not logged in.

#1 2018-07-25 15:08:44

junaru
Member
Registered: 2007-01-14
Posts: 12

[SOLVED] AMDGPU Display mirror missing on kernel 4.17(works on 4.16.9)

ASUS RX580 with AMDGPU and two displays connected:

/sys/class/drm/card0-DVI-D-1      BenQ monitor
/sys/class/drm/card0-HDMI-A-1    Philips TV

On kernel 4.16.9 and prior there was a "Display mode" tab line with [ Join Displays | Mirror | Single display] in GNOME settings and you were able to mirror the displays without any issues:
https://junaru.com/416.png

Since kernel 4.17 the tab line is missing and there's no longer a way to mirror these displays (at least under GNOME).
https://junaru.com/417.png

You can only extend desktop to second display or disable the display altogether. (The 4.17 kernel also erroneously thinks there's a third "Unknown monitor" connected at /sys/class/drm/card0-HDMI-A-2.)

Since this was introduced in kernel 4.17 merge window i'm trying to bisect the last good commit on https://cgit.freedesktop.org/~agd5f/lin … g-drm-next but its going very slowly as most of the commits are not building.

In the meantime can anyone using AMDGPU confirm this? Id like to gather as much info on this as possible before bugging kernel devs. 
Any suggestions or insights are welcome.
Thanks in advance.

lshw output relevant to gpu:

*-display
                description: VGA compatible controller
                product: Ellesmere [Radeon RX 470/480/570/570X/580/580X]
                vendor: Advanced Micro Devices, Inc. [AMD/ATI]
                physical id: 0
                bus info: pci@0000:01:00.0
                version: e7
                width: 64 bits
                clock: 33MHz
                capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
                configuration: driver=amdgpu latency=0
                resources: irq:29 memory:c0000000-cfffffff memory:d0000000-d01fffff ioport:e000(size=256) memory:fe600000-fe63ffff memory:c0000-dffff
           *-multimedia
                description: Audio device
                product: Ellesmere [Radeon RX 580]
                vendor: Advanced Micro Devices, Inc. [AMD/ATI]
                physical id: 0.1
                bus info: pci@0000:01:00.1
                version: 00
                width: 64 bits
                clock: 33MHz
                capabilities: pm pciexpress msi bus_master cap_list
                configuration: driver=snd_hda_intel latency=0
                resources: irq:43 memory:fe660000-fe663fff


Mod note: Replaced oversized images with urls. Please see the Code of Conduct regarding acceptable image sizes. -- WorMzy

Edit: Apparently its a hardware bug, more info can be found at: AMDGPU bugtracker

Last edited by junaru (2018-08-05 12:08:14)

Offline

#2 2018-07-25 15:50:39

loqs
Member
Registered: 2014-03-06
Posts: 18,956

Re: [SOLVED] AMDGPU Display mirror missing on kernel 4.17(works on 4.16.9)

You are trying to find the last good commit between 4.16 and 4.17 so why are you using https://cgit.freedesktop.org/~agd5f/lin … g-drm-next ?
What was your good and bad start points for the bisect?  Can you provide the output from an example of a build failure?

Offline

#3 2018-07-25 16:23:59

junaru
Member
Registered: 2007-01-14
Posts: 12

Re: [SOLVED] AMDGPU Display mirror missing on kernel 4.17(works on 4.16.9)

You are trying to find the last good commit between 4.16 and 4.17 so why are you using https://cgit.freedesktop.org/~agd5f/lin … g-drm-next ?

Used to build AMDGPU from that branch before it was in mainline kernel so when starting the idea was to get a bad commit there and try reporting it to drm/amdgpu devs directly, but now seeing as the branch doesn't build easily on just any commit i think ill try the mainline git.

What was your good and bad start points for the bisect?

The earliest bad point that compiles on said branch is: 9e7f06c8beee304ee21b791653fefcd713f48b9a from 2018-04-10
I have not found a good point yet due to this error persisting on all earlier commits ranging down at least till 5651e5e094591f479adad5830ac1bc45196a39b3 on 2018-03-12 (i have tried 6 commits in between and all of the builds failed with same error)

DESCEND  objtool
  CC       /mnt/data/linux-amd-staging-drm-next-git/src/linux-amd-staging-drm-next-git/tools/objtool/str_error_r.o
../lib/str_error_r.c: In function ‘str_error_r’:
../lib/str_error_r.c:25:3: error: passing argument 1 to restrict-qualified parameter aliases with argument 5 [-Werror=restrict]
   snprintf(buf, buflen, "INTERNAL ERROR: strerror_r(%d, %p, %zd)=%d", errnum, buf, buflen, err);
   ^~~~~~~~
cc1: all warnings being treated as errors
mv: cannot stat '/mnt/data/linux-amd-staging-drm-next-git/src/linux-amd-staging-drm-next-git/tools/objtool/.str_error_r.o.tmp': No such file or directory
make[3]: *** [Build:22: /mnt/data/linux-amd-staging-drm-next-git/src/linux-amd-staging-drm-next-git/tools/objtool/str_error_r.o] Error 1
make[2]: *** [Makefile:46: /mnt/data/linux-amd-staging-drm-next-git/src/linux-amd-staging-drm-next-git/tools/objtool/objtool-in.o] Error 2
make[1]: *** [Makefile:63: objtool] Error 2
make: *** [Makefile:1687: tools/objtool] Error 2

As per suggestion ill try bisecting on official kernel git instead.

Offline

#4 2018-07-25 16:38:07

loqs
Member
Registered: 2014-03-06
Posts: 18,956

Re: [SOLVED] AMDGPU Display mirror missing on kernel 4.17(works on 4.16.9)

That error is coming from gcc8 and you would need 854e55ad289ef8888e7991f0ada85d5846f5afb9
Edit:
You could try the most recent commit on linux-amd-staging-drm-next-git or 4.18-rc6 and if that works do a reverse bisect.  Either way you need a reference known good commit.

Last edited by loqs (2018-07-25 16:51:14)

Offline

Board footer

Powered by FluxBB