nouveau: NV50 (NVAC) broken in latest master
On my NVIDIA ION-based Atom 330 system, running Ubuntu (Mate) 23.04, with Mesa master (from oibaf's PPA) and Linux 6.3-rc7, lightdm (well, X) hangs at startup. I get these errors [1] repeatedly, ad eternum, on my dmesg:
[ 222.357907] nouveau 0000:03:00.0: fifo: DMA_PUSHER - ch 2 [Xorg[651]] get 0000282530 put 00002842ac ib_get 000001b5 ib_put 000001b6 state 80000000 (err: INVALID_CMD) push 00400040
[ 222.357944] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 222.357951] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 0f90 data 00000701
[ 222.357971] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 222.357976] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 135c data 00000701
[ 222.357995] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358001] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1360 data 00000701
[ 222.358020] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358025] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1340 data 00000706
[ 222.358043] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358049] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1348 data 00000703
[ 222.358068] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358073] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1350 data 00000701
[ 222.358092] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358097] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1358 data 00000703
[ 222.358116] nouveau 0000:03:00.0: gr: DATA_ERROR 00000005 [INVALID_ENUM]
[ 222.358122] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 19c4 data 00000700
[ 222.358140] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 222.358145] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 1a00 data 00000711
[ 222.358165] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 222.358170] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 153c data 00000700
[ 222.358350] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 222.358357] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[651]] subc 3 class 8397 mthd 0f90 data 00000701
EDIT 1: Additionally, today I noticed these errors [2] in the Xorg log:
ERROR: nir_alu_instr only supported with 1 component!
nv50_program_translate:399 - shader translation failed: -2
EDIT 2: Sometimes, an additional nv50cal_space: -16
error can be seen in the dmesg [3]:
[ 118.380556] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[625]] subc 3 class 8397 mthd 16ac data 00000043
[ 119.381569] nouveau 0000:03:00.0: gr: DATA_ERROR 0000000c [INVALID_BITFIELD]
[ 119.381589] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[625]] subc 3 class 8397 mthd 164c data 00000600
[ 119.381622] nouveau 0000:03:00.0: gr: DATA_ERROR 00000004 [INVALID_VALUE]
[ 119.381633] nouveau 0000:03:00.0: gr: 00100000 [] ch 2 [000fa50000 Xorg[625]] subc 3 class 8397 mthd 16ac data 00000045
[ 171.461370] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.503308] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.547046] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.589492] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.633691] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.676683] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
[ 171.719227] nouveau 0000:03:00.0: Xorg[625]: nv50cal_space: -16
The machine works fine via ssh, but it's graphically dead. Let me know if any additionaly information is required.
[1] https://paste.debian.net/1277686/
[2] https://paste.debian.net/1277932/
[3] https://paste.debian.net/1278030/
Edited by Rui Salvaterra