'flip queue failed in radeon_scanout_flip: Invalid argument' error and small frame buffer allocated on turning off and on new monitor
Submitted by Ome..@..il.com
Assigned to Default DRI bug account
Created attachment 130326
I have just bought a 3rd monitor, successfully hooked up via Display Port to the R9 290X (Tahiti XT) card and configured fine as 3 non-mirrored outputs in XFCE4.
I found that when I turned it off for ~10 seconds or more, after turning it back on all screens would go black and appear to reinialise. XFCE4 gets confused and clones the primary monitor output to the new 3rd screen, fiddling in the XFCE4 Display program fixes this (after the problem happens it seems to put the primary and new monitor on top of each other...).
Looking into Xorg.0.log, when I turn the monitor off for less than 10 seconds, I just get the following event:
[ 512.737] (WW) RADEON(0): flip queue failed in radeon_scanout_flip: Invalid argument
Being off for 10 seconds or more results in:
[ 1891.671] (II) RADEON(0): Allocate new frame buffer 3840x1200 stride 3840
[ 1891.677] (WW) RADEON(0): flip queue failed in radeon_scanout_flip: Device or resource busy
[ 1891.678] (WW) RADEON(0): flip queue failed in radeon_scanout_flip: Device or resource busy
It now makes sense why monitor output appears to be mirrored (only 2 unique outputs) - 3840 is 1920*2. When I fix the configuration with XFCE4, the correct frame buffer is set up:
[ 2001.120] (II) RADEON(0): Allocate new frame buffer 5760x1200 stride 5760
I have attached the X log.
I'm currently running Devuan Testing (based off Debian Testing)
uname -a: Linux omega1 4.9.0-2-amd64 #1 SMP Debian 4.9.13-1 (2017-02-27) x86_64 GNU/Linux
Thanks for any help.
Attachment 130326, "Xorg log":