Bug 104448 - [NV106/GK208B] Multiple issues / hangs with nouveau driver
Summary: [NV106/GK208B] Multiple issues / hangs with nouveau driver
Status: NEW
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium major
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-02 08:20 UTC by A. Wilcox
Modified: 2018-01-02 08:22 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
dmesg from the affected computer (62.56 KB, text/plain)
2018-01-02 08:20 UTC, A. Wilcox
no flags Details
dmesg from the affected computer directly from dmesg, not klogd (49.12 KB, text/plain)
2018-01-02 08:21 UTC, A. Wilcox
no flags Details
Xorg log, display :0 (39.29 KB, text/plain)
2018-01-02 08:22 UTC, A. Wilcox
no flags Details
Xorg log, display :1 (42.54 KB, text/plain)
2018-01-02 08:22 UTC, A. Wilcox
no flags Details
Xorg log, display :2 (still running at time of attachment) (39.45 KB, text/plain)
2018-01-02 08:22 UTC, A. Wilcox
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description A. Wilcox 2018-01-02 08:20:25 UTC
Created attachment 136481 [details]
dmesg from the affected computer

I am the project lead of the Adélie distribution, a new desktop distribution based on musl libc.  I'm trying to ensure stability on different sets of hardware.  Everything is going well, except for nouveau.

On my Tesla cards (NV92 and NV94), all seems well.  However, my test NV94 card just died, so I replaced it with an NV106:

07:00.0 VGA compatible controller: NVIDIA Corporation GK208 [GeForce GT 730] (rev a1) (prog-if 00 [VGA controller])
        Subsystem: Device 196e:1119
        Flags: bus master, fast devsel, latency 0, IRQ 27
        Memory at b0000000 (32-bit, non-prefetchable) [size=16M]
        Memory at b8000000 (64-bit, prefetchable) [size=128M]
        Memory at c0000000 (64-bit, prefetchable) [size=32M]
        I/O ports at 1000 [size=128]
        Expansion ROM at 000c0000 [disabled] [size=128K]
        Kernel driver in use: nouveau

This is a PNY card, PCI-e x8, in x16 slot (only free slot left) on an Intel S5000XVN.

We were tracking this bug on our own bug tracker, as we originally thought it could be due to musl or out-of-date packages.  That was back in the kernel 4.4 days.  It seems that it probably isn't, though, since no updates seem to have helped.

I will now share what we have there.


Kernel 4.14.8-mc2
libdrm 2.4.85
Mesa 17.3.1-r1
xf86-video-nouveau 1.0.15


Card ID:

[    8.851747] nouveau 0000:07:00.0: NVIDIA GK208B (b06070b1)
[    8.962115] nouveau 0000:07:00.0: bios: version 80.28.78.00.4e
[    8.963575] nouveau 0000:07:00.0: fb: 2048 MiB DDR3


Attempting to switch from Firefox playing a YouTube video in 1080p (https://www.youtube.com/watch?v=pOlWbSUQASs) to TigerVNC Viewer (which was minimised) using composited icon task manager in Plasma 5 (with live thumbnails), the machine locked up:


[ 4718.271933] nouveau 0000:07:00.0: gr: TRAP ch 2 [007fb31000 X[2141]]
[ 4718.271944] nouveau 0000:07:00.0: gr: GPC0/TPC0/TEX: 80000049
[ 4718.271948] nouveau 0000:07:00.0: gr: GPC0/TPC1/TEX: 80000049
[ 4718.271960] nouveau 0000:07:00.0: fifo: read fault at 0000260000 engine 00 [GR] client 01 [GPC0/T1_0] reason 02 [PTE] on channel 2 [007fb31000 X[2141]]
[ 4718.271971] nouveau 0000:07:00.0: fifo: channel 2: killed
[ 4718.271974] nouveau 0000:07:00.0: fifo: runlist 0: scheduled for recovery
[ 4718.271978] nouveau 0000:07:00.0: fifo: engine 0: scheduled for recovery
[ 4718.271990] nouveau 0000:07:00.0: X[2141]: channel 2 killed!


Screen stuck with a picture.  No input is accepted.  Information must be gathered over SSH.

After some debugging and writing all this down, my attempt to `pkill -9 X` yielded ssh locking up for 15 seconds, then the screen showing "No signal" and ssh responding again with the following additional messages:


[ 5250.030144] nouveau 0000:07:00.0: kwin_x11[2212]: failed to idle channel 7 [kwin_x11[2212]]
[ 5265.030142] nouveau 0000:07:00.0: kwin_x11[2212]: failed to idle channel 7 [kwin_x11[2212]]
[ 5265.030232] nouveau 0000:07:00.0: fifo: read fault at 0000130000 engine 07 [HOST0] client 07 [HOST_CPU] reason 02 [PTE] on channel 2 [007f8e2000 kwin_x11[2212]]
[ 5265.030241] nouveau 0000:07:00.0: fifo: channel 7: killed
[ 5265.030244] nouveau 0000:07:00.0: fifo: runlist 0: scheduled for recovery
[ 5265.030871] nouveau 0000:07:00.0: kwin_x11[2212]: channel 7 killed!


TTYs no longer worked.  Running `startx` from SSH brought up a new Plasma session on X display :1.  After restarting X11, TTYs work correctly again.

While scrolling through https://bugs.freedesktop.org/show_bug.cgi?id=92077 (in the middle of comment 17), I noticed that while I still had mouse button 0 down and was moving the cursor over Firefox's scroll bar, the scroll bar was no longer moving and neither was the content of the page.  The mouse was still accepting input, but I could not switch to a TTY.  Everything else was locked.


New messages in dmesg:

[ 7474.808501] nouveau 0000:07:00.0: fifo: SCHED_ERROR 0a [CTXSW_TIMEOUT]
[ 7474.808514] nouveau 0000:07:00.0: fifo: runlist 0: scheduled for recovery
[ 7474.808523] nouveau 0000:07:00.0: fifo: channel 8: killed
[ 7474.808532] nouveau 0000:07:00.0: fifo: engine 0: scheduled for recovery
[ 7474.808632] nouveau 0000:07:00.0: plasmashell[3872]: channel 8 killed!


`pkill -9 X` was a very simple fix this time.  It threw me back to "No signal" on the monitor, but then when I ran `startx` again, I was immediately greeted with my normal desktop.  Now there is a Plasma session on X display :2.  FWIW, there aren't any other X servers running.


Software that is always running when this happens (I don't know if one of them is the culprit):

pidgin-2.12.0-r0
konsole-17.08.2-r0
firefox-esr-52.3.0-r0
All the KDE Plasma components at 5.8.7.
tigervnc-1.8.0-r0

One time, Quaternion (0.0.5-r0) was open, but it happened the second time without Quaternion open, so I doubt it is the cause.

It only seems to take about half an hour to make this happen under my current workflow, so I think debugging may be easy.  I just don't know what to do to debug further.

Attached is entire dmesg, and Xorg.*.log.  Sorry, I don't have debugfs enabled here, so I can't grab VBIOS yet.  I will do that if needed, but it will need a reboot.
Comment 1 A. Wilcox 2018-01-02 08:21:34 UTC
Created attachment 136482 [details]
dmesg from the affected computer directly from dmesg, not klogd
Comment 2 A. Wilcox 2018-01-02 08:22:03 UTC
Created attachment 136483 [details]
Xorg log, display :0
Comment 3 A. Wilcox 2018-01-02 08:22:15 UTC
Created attachment 136484 [details]
Xorg log, display :1
Comment 4 A. Wilcox 2018-01-02 08:22:42 UTC
Created attachment 136485 [details]
Xorg log, display :2 (still running at time of attachment)


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.