Created attachment 92699 [details]
Running a 3.13 kernel, built from upstream git repository (commit d8ec26d7f8287f5788a494f56e8814210f0e64be).
I'm able to consistently generate an ongoing interrupt storm by [un]docking my Lenovo W530 when using the nouveau driver. This problem was first noticed under a 3.10 kernel and associated nouveau driver. I then switched to the above 3.13 kernel for the MSI interrupt support and to see if the problem persisted.
The attached nouveau.interrupts is the output of read_interrupts, the source for which is here: http://www.darnok.org/xen/read_interrupts.c. This file shows the interrupts generated during 5 second intervals.
Created attachment 92700 [details]
Created attachment 92701 [details]
vbios of the card captured via:
sudo cat /sys/kernel/debug/dri/0/vbios.rom > vbios.rom
Created attachment 92702 [details]
Linux perf tool report captured during the interrupt storm
Created attachment 92703 [details]
Requested kernel log
Comment on attachment 92699 [details]
Incorrectly labeled upload, sorry.
Should also note that I attempted booting with the nouveau.config=NvI2C=1 kernel parameter. However, with this parameter present, both the VT text and splash screen were corrupted (appeared interleaved), there was no display from X (though I could hear the startup sound indicating it had started), and the system was not reliably connected to the network (couldn't ping or ssh to it).
Created attachment 92709 [details]
dmesg output with debugging enabled
Reproduced the storm with a few additional kernel command line options to increase logging verbosity.
This xrandr output seems very strange, I don't recall seeing resolutions for disconnected displays before. Nor, do I recall seeing output like the 6 lines below DP-3:
Screen 0: minimum 320 x 200, current 5280 x 1080, maximum 8192 x 8192
LVDS-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 193mm
1920x1080 60.0*+ 60.0 50.0
VGA-1 disconnected 1440x900+3840+0 (normal left inverted right x axis y axis) 0mm x 0mm
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected 1920x1080+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
DP-3 disconnected (normal left inverted right x axis y axis)
1920x1080 (0x77) 148.5MHz
h: width 1920 start 2008 end 2052 total 2200 skew 0 clock 67.5KHz
v: height 1080 start 1084 end 1089 total 1125 clock 60.0Hz
1440x900 (0x82) 106.5MHz
h: width 1440 start 1520 end 1672 total 1904 skew 0 clock 55.9KHz
v: height 900 start 903 end 909 total 934 clock 59.9Hz
It seems that undocking the laptop is not required to trigger the interrupt storm. All that is necessary is disconnecting the display connected to DP-3. As long as DP-3 is never connected, I can dock and undock the laptop repeatedly without triggering the storm. Simply attaching a monitor to that port and disconnecting it triggers the storm. Going to try a few other scenarios and report back.
Created attachment 92716 [details]
Xorg log for normal connections
To further complicate matters, it appears to matter which monitor it is that is connected to DP-3. If I change the order of the monitors and and place the monitor that is normally connected to DP-2 on DP-3 and the one that is normally connected to DP-3 on DP-2, this problem goes away at least here at home.
Monitor that is normally connected to DP-2:
Manufacturer: DEL Model: a05c Serial#: 843992405
Monitor that is normally connected to DP-3:
Manufacturer: GWY Model: 777 Serial#: 16843009
However, at work the unit is normally connected to three 24" monitors which require the use of DP-3 and trigger this issue as well. So, simply changing the connection order will only work around the issue at one location.
Created attachment 92739 [details]
both sets of displays
I've confirmed I can replicate this problem with the displays at work as well. Attaching an Xorg log containing information for both sets of displays.
I have reported this bug https://bugs.freedesktop.org/show_bug.cgi?id=76732 a week ago. I though that it may be a small possibility that the two bugs are correlated.
You wrote you noticed the bug first in 3.10. Did you ever tested 3.8 (in specific 3.8 rc6) and 3.9?
Just to understand if the bug appared in 3.10 of if you just noticed it in 3.10.
There is a substantial DP rework bound for 3.16. Can you give http://cgit.freedesktop.org/~airlied/linux/log/?h=drm-next a shot?