nouveau/gsp: allocate enough space for all channel ids.
authorDave Airlie <airlied@redhat.com>
Tue, 21 Nov 2023 20:11:09 +0000 (06:11 +1000)
committerDanilo Krummrich <dakr@redhat.com>
Tue, 21 Nov 2023 21:28:01 +0000 (22:28 +0100)
commitab93edb2f94c3c0d5965be3815782472adbe3f52
tree4aad41618fdad61f0defaf839189b1e8da0ab412
parentcea7008190ad65b4aaae6e94667a358d2c10a696
nouveau/gsp: allocate enough space for all channel ids.

This probably isn't the ideal fix, but we ended up using chids
sparsely, and lots of things rely on indexing into the full range,
so just allocate the full range up front.

The GSP code fixes 8 channels into a userd page, but we end up using
a single userd page per channel so end up sparsely using the range.

Fixes a few crashes seen with multiple channels.

Link: https://gitlab.freedesktop.org/drm/nouveau/-/issues/277
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Danilo Krummrich <dakr@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231121201109.2988516-1-airlied@gmail.com
drivers/gpu/drm/nouveau/nvkm/engine/fifo/r535.c