Bug 109556

Summary: [NV50/GT200] fifo: DMA_PUSHER ... (err: INVALID_CMD) push 00400040
Product: xorg Reporter: bastian.beischer
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED MOVED QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: medium CC: qjztreez
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg log
none
pacman upgrade log none

Description bastian.beischer 2019-02-05 10:32:38 UTC
Created attachment 143301 [details]
dmesg log

I'm using Arch Linux with Linux 4.20.6, X11 and the modesetting driver together with the KDE plasma desktop (5.14.5). After using the desktop for a while (in particular, after causing some graphics load) visual artifacts appear and plasma-desktop often hangs up. Sometimes the hanging process can be restarted, other times X is completely frozen (but can still be ssh'ed into).

The dmesg log shows these lines, although only the fifo DMA_PUSHER lines seem to consistently appear every time the problem is triggered:

[  227.576711] nouveau 0000:04:00.0: fifo: DMA_PUSHER - ch 6 [Xorg[751]] get 00000eb764 put 00000ec8ec ib_get 00000167 ib_put 0000016a state 80006eac (err: INVALID_CMD) push 00400040
[  227.630897] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630904] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 1348 data 00046da0
[  227.630916] nouveau 0000:04:00.0: fifo: DMA_PUSHER - ch 6 [Xorg[751]] get 00000fcb8c put 0000102f84 ib_get 00000178 ib_put 0000017c state 80007354 (err: INVALID_CMD) push 00400040
[  227.630926] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630929] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 134c data 00000000
[  227.630938] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630941] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 1350 data 000479d0
[  227.630950] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630953] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 1348 data 00046da0
[  227.630964] nouveau 0000:04:00.0: fifo: DMA_PUSHER - ch 6 [Xorg[751]] get 00000fcb8c put 0000102f84 ib_get 0000017a ib_put 0000017c state 80007354 (err: INVALID_CMD) push 00400040
[  227.630975] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630978] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 134c data 00000000
[  227.630988] nouveau 0000:04:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[  227.630991] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 1350 data 000479d0
[  227.665017] nouveau 0000:04:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[  227.665022] nouveau 0000:04:00.0: gr: 00100000 [] ch 6 [007f437000 Xorg[751]] subc 3 class 8397 mthd 135c data 000472e8
[  227.847944] nouveau 0000:04:00.0: fifo: DMA_PUSHER - ch 6 [Xorg[751]] get 0000138e10 put 000013b454 ib_get 000001ad ib_put 000001b0 state 40000004 (err: INVALID_MTHD) push 00400040
[  227.850171] nouveau 0000:04:00.0: fifo: CACHE_ERROR - ch 6 [Xorg[751]] subc 0 mthd 0000 data 00146200
[  227.889579] nouveau 0000:04:00.0: Xorg[751]: multiple instances of buffer 4 on validation list
[  227.889588] nouveau 0000:04:00.0: Xorg[751]: validate_init
[  227.889590] nouveau 0000:04:00.0: Xorg[751]: validate: -22
[  227.891472] nouveau 0000:04:00.0: fifo: DMA_PUSHER - ch 6 [Xorg[751]] get 0000141bf0 put 00001479b8 ib_get 000001b4 ib_put 000001b5 state 80007418 (err: INVALID_CMD) push 00400040

(the full dmesg.log is attached)

This problem is rather new. It was introduced with a package upgrade in Arch Linux that happened within the last few days (I will attach the pacman upgrade log for those who want to know.)
Comment 1 bastian.beischer 2019-02-05 10:33:15 UTC
Created attachment 143302 [details]
pacman upgrade log
Comment 2 bastian.beischer 2019-02-06 00:10:30 UTC
Managed to pin down the problem to the upgrade of qt5 from 5.12.0 to 5.12.1. I don't know how that upgrade can cause the bug, but problems go away when downgrading again.
Comment 3 qjztreez 2019-02-06 14:30:56 UTC
*** Bug 109558 has been marked as a duplicate of this bug. ***
Comment 4 bastian.beischer 2019-02-08 21:51:11 UTC
I bisected the problem to a commit in Qt 5.12.1 which enabled multithreaded GL rendering. I've read elsewhere that nouveau DRM doesn't deal well with mt rendering.

For more info, see here:

https://bugreports.qt.io/browse/QTBUG-73715

So from the nouveau side there's no new problem here and I think this bug report can be closed.
Comment 5 bastian.beischer 2019-02-08 21:52:54 UTC
(In reply to qjztreez from comment #3)
> *** Bug 109558 has been marked as a duplicate of this bug. ***

Are you using the oxygen theme? If yes, please checkout

https://bugreports.qt.io/browse/QTBUG-73691

which is not the same problem as mine.
Comment 6 qjztreez 2019-02-08 23:55:19 UTC
(In reply to bastian.beischer from comment #5)
> (In reply to qjztreez from comment #3)
> > *** Bug 109558 has been marked as a duplicate of this bug. ***
> 
> Are you using the oxygen theme? If yes, please checkout
> 
> https://bugreports.qt.io/browse/QTBUG-73691
> 
> which is not the same problem as mine.

No, I am using Arc KDE theme with Kvantum, and I forgot to mention that either downgrading Qt to 5.12.0 or installing the proprietary NVIDIA driver seemed to solve my problem.
Comment 7 Martin Peres 2019-12-04 09:48:04 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-nouveau/issues/477.

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.