Bug 1243432

Summary: KDE 5 dual monitor setup with intel+nouveau drivers causes journal to be flooded with errors "[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value ..."
Product: [Fedora] Fedora Reporter: Fredy Neeser <nfd>
Component: kwinAssignee: KDE SIG <kde-sig>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 22CC: jan.public, jgrulich, kevin, ltinkl, paul.0000.black, rdieter, than, vlad
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 19:14:58 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Journal showing nouveau being loaded and drm errors, and Xorg.0.log
none
Xorg.0.log none

Description Fredy Neeser 2015-07-15 12:22:10 UTC
Created attachment 1052348 [details]
Journal showing nouveau being loaded and drm errors, and Xorg.0.log

Description of problem:
My dual monitor setup with KDE Plasma 5 works on an "Optimus" laptop, but the journal is flooded (at high rate) with kernel drm errors such as

[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x133, supported mask 0x7400003f
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x4000133, supported mask 0x7400003f

I'm on a Lenovo W530 laptop with integrated Intel and discrete Nvidia graphics
("Optimus" technology) and have a working KDE 5 dual monitor setup (LVDS + DP).

The setup requires that I modprobe the nouveau driver manually before login to KDE.  It gives me a composite screen that extends over both the LVDS and the external monitor and has very smooth performance when moving windows -- a positive surprise given that the nouveau driver is involved.

This is in fact the *only* way I got an external monitor to work on Fedora 22 with KDE Plasma 5.

The rate of the above error messages is **hundreds per minute** and hence rapidly fills the journal, besides slowing down the system.

As a temporary workaround, the error messages can be reliably stopped by setting
  KDE Display Configuration > Primary display
to "No Primary Output".  Fortunately, this does not immediately move the KDE Panel to the smaller laptop screen, but it does so when I logout/login, so this setting is not suitable as a permanent solution.

As I often need the KDE Panel on the bigger external monitor, I prefer to set
  KDE Display Configuration > Primary display
to my external monitor for this dual monitor kscreen setup.

The fact that the drm error messages stop when I set the Primary display
to "No Primary Output" indicates that kwin is in control of the vblank functionality but does not always do so correctly.


Version-Release number of selected component (if applicable):

kwin-libs-5.3.2-1.fc22.x86_64
kwin-5.3.2-1.fc22.x86_64
kf5-kwindowsystem-5.11.0-1.fc22.x86_64

xorg-x11-drv-intel-2.99.917-12.20150615.fc22.x86_64
xorg-x11-drv-nouveau-1.0.11-2.fc22.x86_64

mesa-dri-drivers-10.5.4-1.20150505.fc22.x86_64
(mesa-dri-drivers-10.6.1-1.20150629.fc22.x86_64 not installed because
 it causes modprobe-ing nouveau.ko to fail)

libdrm-2.4.61-3.fc22.x86_64
libdrm-devel-2.4.61-3.fc22.x86_64
libdrm-2.4.61-3.fc22.i686

# uname -r
4.0.7-300.fc22.x86_64


How reproducible:
100%

Steps to Reproduce:
1.  Boot
2.  Before login, 'sudo modprobe nouveau' via a console
3.  Login to KDE Plasma 5
4.  Setup KDE Display Configuration for a composite screen
    extending over both Laptop Screen (LVDS) and Ext. Monitor (DP...).
    Set Primary display = <Ext. Monitor>

Actual results:
Working screen, with KDE panel on external monitor, but dmesg is flooded with kernel drm errors such as

[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x133, supported mask 0x7400003f
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x4000133, supported mask 0x7400003f

or

[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x73, supported mask 0x7400003f
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x4000073, supported mask 0x7400003f


Expected results:
No flooding with drm error messages, even if KDE is unable to use VSync with the given dual monitor setup.


Additional info:
Based on KDE System Settings > Display and Monitor > Compositor:
- Scale method     : Crisp
- Rendering backend: XRender              (1)
- Tearing prevention ("vsync"): Automatic (2)

(1) Changing this setting to OpenGL 2.0 or OpenGL 3.1 does not eliminate
    the drm_wait_vblank errors but causes mouse pointer movements to
    leave "traces" on the screen.
(2) Changing this setting does not eliminate the drm_wait_vblank errors

Comment 1 Laszlo Pal 2015-08-19 11:47:38 UTC
Created attachment 1064769 [details]
Xorg.0.log

my log

Aug 19 13:42:34 tohuvabohu.balabit kernel: [drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x139, supported mask 0x7400003f

Comment 2 Laszlo Pal 2015-08-19 11:49:42 UTC
My environment is Cinnamon and here is my versions

xorg-x11-server-Xorg.x86_64          1.17.2-2.fc22                       @System
cinnamon.x86_64                      2.6.13-2.fc22                       @System
xorg-x11-drv-nouveau.x86_64          1:1.0.11-2.fc22                     @System

4.1.4-200.fc22.x86_64

Comment 3 Paul Black 2015-08-27 09:33:56 UTC
I'm seeing similar:
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x4b, supported mask 0x7400003f
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x4b, supported mask 0x7400003f
[drm:drm_wait_vblank [drm]] *ERROR* Unsupported type value 0x400004b, supported mask 0x7400003f

My setup also has dual monitors with Intel/Nvidia. I've only started seeing this recently (possibly since I started using HDMI rather than VGA for one of the screens).

Comment 4 Paul Black 2015-08-27 09:34:42 UTC
Also with KDE on F22.

Comment 5 Fredy Neeser 2015-09-04 12:03:50 UTC
Meanwhile I completely removed bumblebee.  As a result, doing an explicit
  # modprobe nouveau
via a console is no longer necessary before login -- good.

However, the flood of "Unsupported type value" errors is still present.
My setup is currently working with kernel 4.1.3-201.fc22.x86_64.

For nouveau users out there: Note that the latest kernel (4.1.6-200.fc22.x86_64)
no longer works for me (KDE 5 Plasma setup on Lenovo W530 with "Optimus"), see

  https://bugzilla.redhat.com/show_bug.cgi?id=1260053

Comment 6 Fredy Neeser 2015-09-04 12:22:33 UTC
Output of xrandr for my dual-monitor setup:

$ xrandr -q
Screen 0: minimum 8 x 8, current 4480 x 1440, maximum 32767 x 32767
LVDS1 connected 1920x1080+0+360 (normal left inverted right x axis y axis) 344mm x 193mm
   1920x1080     60.02*+  50.03  
   1400x1050     59.98  
   1600x900      60.00  
   1280x1024     60.02  
   1280x960      60.00  
   1368x768      60.00                                                                                                        
   1280x720      60.00                                                                                                        
   1024x768      60.00                                                                                                        
   1024x576      60.00                                                                                                        
   960x540       60.00                                                                                           
   800x600       60.32    56.25                                                                                  
   864x486       60.00                                                                                           
   640x480       59.94                                                                                    
   720x405       60.00                                                                                    
   640x360       60.00                                                                                    
VGA1 disconnected (normal left inverted right x axis y axis)                                            
VIRTUAL1 disconnected (normal left inverted right x axis y axis)                                        
LVDS-1-2 disconnected (normal left inverted right x axis y axis)                                         
VGA-1-2 disconnected (normal left inverted right x axis y axis)                                          
DP-1-1 disconnected (normal left inverted right x axis y axis)                                             
DP-1-2 disconnected (normal left inverted right x axis y axis)                                               
DP-1-3 connected 2560x1440+1920+0 (normal left inverted right x axis y axis) 597mm x 336mm                           
   2560x1440     59.95*+                                                                                                      
   1920x1200     59.88  
   1920x1080     60.00    50.00    59.94    24.00    23.98  
   1920x1080i    60.00    50.00    59.94  
   1600x1200     60.00  
   1680x1050     59.95  
   1280x1024     75.02    60.02  
   1280x800      59.81  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.08    60.00  
   800x600       75.00    60.32  
   720x576       50.00  
   720x576i      50.00  
   720x480       60.00    59.94  
   720x480i      60.00    59.94  
   640x480       75.00    60.00    59.94  
   720x400       70.08  
  1280x1024 (0x76) 108.000MHz
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1024x768 (0x7d) 65.000MHz
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x7f) 40.000MHz
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  640x480 (0x88) 25.175MHz
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz

Comment 7 Paul Black 2015-09-14 09:33:42 UTC
This has now gone away for me with a bunch of updates that included new kernel, new KDE packages and new mesa stuff.

Comment 8 Kevin Kofler 2015-09-14 11:05:09 UTC
Looks like this is fixed. Please let us know if it happens again (or still happens for you) so we can reopen it.

Comment 9 Paul Black 2015-09-15 08:10:26 UTC
After a reboot it's back.

I can't spot how to repoen this bug.

Comment 10 Fredy Neeser 2015-09-15 10:26:15 UTC
Paul, I also noted that the drm_wait_vblank errors do not occur on every boot -- for me, the journal spamming occurs with roughly 3 out of 4 reboots.

This is still for kernel 4.1.3-201.fc22.x86_64, because the external monitor remains black for me with newer kernels (4.1.6-200.fc22 and 4.1.6-201.fc22), where I am getting nouveau errors

  kernel: nouveau E[   PDISP][0000:01:00.0][0x00000006] 06:0006:0f48: link training failed

in the journal.

Are these newer kernels working for you?  (One difference we have is that you are using HDMI, whereas I am using DP for the external monitor.)

B.t.w., what's your setting for
  KDE Display Configuration > Primary display
?

Comment 11 Paul Black 2015-09-15 11:59:09 UTC
This recent boot was the first time I noticed it behaving correctly.

I've not had any trouble with any particular kernel version (currently using 4.1.6-201).

My primary display is ""Goldstar Company Ltd 24MP55 (HDMI-1-1)" (so not the integral "Laptop Screen").

Comment 12 Fredy Neeser 2015-10-07 08:28:46 UTC
See also:

https://bugs.freedesktop.org/show_bug.cgi?id=92327
Bug 92327 - Tearing and drm_wait_vblank kernel log spam with reverse PRIME (intel+nouveau)

Comment 15 Fredy Neeser 2015-12-28 16:18:00 UTC
The problem is still present with Plasma 5.5.0, KDE frameworks 5.17 and kernel 4.2.8-200  (fully updated F22 system) -- it shows in roughly 3 out of 4 boot/login cycles.

Temporary workaround of original bug description still applies.


Current Version-Release numbers:

kwin-libs-5.5.0-1.fc22.x86_64
kwin-5.5.0-1.fc22.x86_64
kf5-kwindowsystem-5.17.0-1.fc22.x86_64

xorg-x11-drv-intel-2.99.917-15.20150729.fc22.x86_64
xorg-x11-drv-nouveau-1.0.11-2.fc22.x86_64

mesa-dri-drivers-10.6.9-1.20151008.fc22.x86_64

libdrm-2.4.61-3.fc22.x86_64
libdrm-debuginfo-2.4.61-3.fc22.x86_64
libdrm-devel-2.4.61-3.fc22.x86_64
libdrm-2.4.61-3.fc22.i686

# uname -r
4.2.8-200.fc22.x86_64

Comment 16 Fedora End Of Life 2016-07-19 19:14:58 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.