[Nouveau] Meaning of the engines in paramaters of nouveau module

Dave Airlie airlied at gmail.com
Tue Dec 5 03:27:49 UTC 2023


On Mon, 4 Dec 2023 at 05:04, Paul Dufresne <dufresnep at zoho.com> wrote:
>
> In https://nouveau.freedesktop.org/KernelModuleParameters.html, there is:
> Here is a list of engines:
>     DEVICE
>     DMAOBJ
>     PBSP
>     PCE0
>     PCE1
>     PCE2
>     PCRYPT
>     PDISP
>     PFIFO
>     PGRAPH
>     PMPEG
>     PPM
>     PPPP
>     PVP
>     SW
> Also, in debug:
>    CLIENT
>
> I have tried to find a description of those.
> https://envytools.readthedocs.io/en/latest/
> help a bit, but I don't find a precise correlation.
>
> https://nouveau.freedesktop.org/NouveauTerms.html
> does not seems to have most of these terms.
>
> I am particularly curious about PCE[0-3].
> But also about CLIENT, that seems different and mysterious.
>
> I wonder if it is possible to write:
> nouveau.debug=info,PDISP=debug
> to have the info debug level as the default, but for PDISP have the debug level
>
> Also, my interest is linked to the state of GPU graph given after a context switch timeout that looks like:
> [ 1696.780305] nouveau 0000:01:00.0: fifo: SCHED_ERROR 0a [CTXSW_TIMEOUT]
> [ 1696.780361] nouveau 0000:01:00.0: fifo:000000:00[      gr]: 8006e005: busy 1 faulted 0 chsw 1 save 1 load 1 chid 5*-> chid 6
> [ 1696.780422] nouveau 0000:01:00.0: fifo:000000:07[     ce2]: 00050005: busy 0 faulted 0 chsw 0 save 0 load 0 chid 5 -> chid 5
> [ 1696.780476] nouveau 0000:01:00.0: fifo:000004:04[     ce0]: 00000000: busy 0 faulted 0 chsw 0 save 0 load 0 chid 0 -> chid 0
> [ 1696.780529] nouveau 0000:01:00.0: fifo:000001:01[  mspdec]: 00000000: busy 0 faulted 0 chsw 0 save 0 load 0 chid 0 -> chid 0
> [ 1696.780581] nouveau 0000:01:00.0: fifo:000002:02[   msppp]: 00000000: busy 0 faulted 0 chsw 0 save 0 load 0 chid 0 -> chid 0
> [ 1696.780633] nouveau 0000:01:00.0: fifo:000003:03[   msvld]: 00000000: busy 0 faulted 0 chsw 0 save 0 load 0 chid 0 -> chid 0
> [ 1696.780689] nouveau 0000:01:00.0: fifo:000000:00[      gr]: 8006e005: busy 1 faulted 0 chsw 1 save 1 load 1 chid 5*-> chid 6
> [ 1696.780744] nouveau 0000:01:00.0: fifo:000000:00[      gr]: 8006e005: busy 1 faulted 0 chsw 1 save 1 load 1 chid 5*-> chid 6
> [ 1696.780795] nouveau 0000:01:00.0: fifo:000000:00[      gr]: triggering mmu fault on 0x00
> [ 1696.780835] nouveau 0000:01:00.0: fifo:000000:07[     ce2]: 00050005: busy 0 faulted 0 chsw 0 save 0 load 0 chid 5 -> chid 5
> [ 1696.780942] nouveau 0000:01:00.0: fifo:000000:00[      gr]: 00000100: mmu fault triggered
> [ 1696.780987] nouveau 0000:01:00.0: fifo:000000:00[      gr]: c006e005: busy 1 faulted 1 chsw 1 save 1 load 1 chid 5*-> chid 6
> [ 1696.781040] nouveau 0000:01:00.0: fifo:000000:0005:[Renderer[13701]] rc scheduled
>
> where I suspect ce2, is linked to PCE2.
>
> Is there a documentation that describes those "engines"?

CE is copy engine.
But this looks like an mmu fault on the GPU side, so some shader is
doing something wrong most likely.

Dave.


More information about the Nouveau mailing list