mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 15:00:10 +01:00
nv50: allocate an extra code bo to avoid dmesg spam
Each code BO is a heap that allocates at the end first, and so GPs are allocated at the very end of the allocated space. When executing, we see PAGE_NOT_PRESENT errors for the next page. Just over-allocate to make sure that there's something there. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
58589f6c6d
commit
d98b85b507
1 changed files with 5 additions and 1 deletions
|
|
@ -738,8 +738,12 @@ nv50_screen_create(struct nouveau_device *dev)
|
|||
goto fail;
|
||||
}
|
||||
|
||||
/* This over-allocates by a whole code BO. The GP, which would execute at
|
||||
* the end of the last page, would trigger faults. The going theory is that
|
||||
* it prefetches up to a certain amount. This avoids dmesg spam.
|
||||
*/
|
||||
ret = nouveau_bo_new(dev, NOUVEAU_BO_VRAM, 1 << 16,
|
||||
3 << NV50_CODE_BO_SIZE_LOG2, NULL, &screen->code);
|
||||
4 << NV50_CODE_BO_SIZE_LOG2, NULL, &screen->code);
|
||||
if (ret) {
|
||||
NOUVEAU_ERR("Failed to allocate code bo: %d\n", ret);
|
||||
goto fail;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue