Re: [Nouveau] [PATCH] drm/nouveau: Acknowledge DMA_VTX_PROTECTION PGRAPH interrupts

2010-01-17 Thread Francisco Jerez
Luca Barbieri l...@luca-barbieri.com writes: Currently Nouveau is unable to dismiss DMA_VTX_PROTECTION errors, which results in an infinite loop in the interrupt handler. These errors are caused both by bugs in the Gallium driver and by user-specified index buffers with out of bounds

[Nouveau] [PATCH] libdrm/nouveau: Support nested bo mapping

2010-01-17 Thread Luca Barbieri
Most Gallium drivers support nested mapping by using a reference count. We don't, and swtnl fallback triggers an error due to this. This patch adds this support in libdrm. --- nouveau/nouveau_bo.c |8 +++- nouveau/nouveau_private.h |1 + 2 files changed, 8 insertions(+), 1

[Nouveau] [PATCH 1/2] nv40: don't crash on empty fragment program

2010-01-17 Thread Luca Barbieri
--- src/gallium/drivers/nv40/nv40_fragprog.c |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/src/gallium/drivers/nv40/nv40_fragprog.c b/src/gallium/drivers/nv40/nv40_fragprog.c index 1237066..209d211 100644 --- a/src/gallium/drivers/nv40/nv40_fragprog.c +++

[Nouveau] [PATCH 2/2] st: don't assert on empty fragment program

2010-01-17 Thread Luca Barbieri
Sauerbraten triggers this assert. --- src/mesa/state_tracker/st_atom_shader.c |2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/src/mesa/state_tracker/st_atom_shader.c b/src/mesa/state_tracker/st_atom_shader.c index 176f3ea..fce533a 100644 ---

[Nouveau] [mesa PATCH] nv50: fix nv50_program-immd memory leak

2010-01-17 Thread Marcin Slusarz
--- src/gallium/drivers/nv50/nv50_program.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/nv50/nv50_program.c b/src/gallium/drivers/nv50/nv50_program.c index 4111d21..cfe8b48 100644 --- a/src/gallium/drivers/nv50/nv50_program.c +++

[Nouveau] [mesa PATCH] nouveau: fix winsys object leak

2010-01-17 Thread Marcin Slusarz
--- src/gallium/drivers/nouveau/nouveau_screen.c |2 ++ .../winsys/drm/nouveau/drm/nouveau_drm_api.c |9 + 2 files changed, 11 insertions(+), 0 deletions(-) diff --git a/src/gallium/drivers/nouveau/nouveau_screen.c b/src/gallium/drivers/nouveau/nouveau_screen.c

[Nouveau] [mesa PATCH] nouveau/winsys: be nice and close the device on destroy

2010-01-17 Thread Marcin Slusarz
--- this patch depends on nouveau: fix winsys object leak --- .../winsys/drm/nouveau/drm/nouveau_drm_api.c |2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c b/src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c

[Nouveau] [PATCH 1/2] nv30-nv40: support unlimited queries

2010-01-17 Thread Luca Barbieri
Currently on NV30/NV40 an assert will be triggered once 32 queries are outstanding. This violates the OpenGL/Gallium interface, which requires support for an unlimited number of fences. This patch fixes the problem by putting queries in a linked list and waiting on the oldest one if allocation

[Nouveau] [PATCH 2/2] nv30/nv40: allocate a bigger block for queries

2010-01-17 Thread Luca Barbieri
This patch allocates a bigger chunk of memory to store queries in, increasing the (hidden) outstanding query limit from 32 to 125. It also tries to make use of a 16KB notifier block if the kernel supports that. The blob supports 1024 queries due to their 16KB query block and 16-byte rather than