We'd have to map the VBO and rewrite things to a lower stride to fix it.
---
src/mesa/drivers/dri/i965/brw_draw_upload.c | 4
1 file changed, 4 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_draw_upload.c
b/src/mesa/drivers/dri/i965/brw_draw_upload.c
index 4da1b7e..8b1f0c5 100644
--- a/src/mesa/drivers/dri/i965/brw_draw_upload.c
+++ b/src/mesa/drivers/dri/i965/brw_draw_upload.c
@@ -607,6 +607,7 @@ static void brw_prepare_vertices(struct brw_context *brw)
static void brw_emit_vertices(struct brw_context *brw)
{
+ struct gl_context *ctx = brw-ctx;
GLuint i, nr_elements;
brw_prepare_vertices(brw);
@@ -678,6 +679,9 @@ static void brw_emit_vertices(struct brw_context *brw)
if (brw-gen == 7)
dw0 |= GEN7_MOCS_L3 16;
+ WARN_ONCE(buffer-stride = (brw-gen = 5 ? 2048 : 2047),
+ VBO stride %d too large, bad rendering may occur\n,
+ buffer-stride);
OUT_BATCH(dw0 | (buffer-stride BRW_VB0_PITCH_SHIFT));
OUT_RELOC(buffer-bo, I915_GEM_DOMAIN_VERTEX, 0, buffer-offset);
if (brw-gen = 5) {
--
1.8.4.rc3
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev