mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 11:18:08 +02:00
n50/compute: submit initial compute state in nv50_screen_create
This fixes some CACHE_ERROR caused by proper multi-threading support. The bug is a bit older though, just never triggered because there was only one push buffer to begin with. Without this change the compute initialization stayed unpushed in the screen push buffer causing random issues. Fixes:ff72440b40("nv50: implement a basic compute support") Signed-off-by: Karol Herbst <git@karolherbst.de> Reviewed-by: M Henning <drawoc@darkrefraction.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24496> (cherry picked from commita9a30a7e09)
This commit is contained in:
parent
2cbed72bca
commit
3b87165497
2 changed files with 4 additions and 3 deletions
|
|
@ -19464,7 +19464,7 @@
|
|||
"description": "n50/compute: submit initial compute state in nv50_screen_create",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": "ff72440b40211326eda118232fabd53965410afd",
|
||||
"notes": null
|
||||
|
|
|
|||
|
|
@ -787,8 +787,6 @@ nv50_screen_init_hwctx(struct nv50_screen *screen)
|
|||
PUSH_DATA (push, 1);
|
||||
BEGIN_NV04(push, NV50_3D(UNK19C0), 1);
|
||||
PUSH_DATA (push, 1);
|
||||
|
||||
PUSH_KICK (push);
|
||||
}
|
||||
|
||||
static int nv50_tls_alloc(struct nv50_screen *screen, unsigned tls_space,
|
||||
|
|
@ -1071,6 +1069,9 @@ nv50_screen_create(struct nouveau_device *dev)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
// submit all initial state
|
||||
PUSH_KICK(screen->base.pushbuf);
|
||||
|
||||
return &screen->base;
|
||||
|
||||
fail:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue