From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 80419] XCOM: Enemy Unknown Causes lockup Date: Wed, 30 Mar 2016 14:40:42 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0012845308==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 7CDEA6E21E for ; Wed, 30 Mar 2016 14:40:42 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============0012845308== Content-Type: multipart/alternative; boundary="14593488425.c4a9.3186"; charset="UTF-8" --14593488425.c4a9.3186 Date: Wed, 30 Mar 2016 14:40:42 +0000 MIME-Version: 1.0 Content-Type: text/plain https://bugs.freedesktop.org/show_bug.cgi?id=80419 --- Comment #127 from Davin McCall --- The comment above from Jose Fonseca (and follow up from Feral's Edwin Smith) imply that the problem here is with the game calling glDrawRangeElementsBaseVertex with bad start/end values, resulting in the indices being out-of-range which is illegal per the GL spec, and implying that this is what causes the crash. I have tried patching Mesa to effectively reduce glDrawRangeElementsBaseVertex calls to glDrawElementsBaseVertex (i.e. same method but with no start/end supplied). Patch follows below (inline because it is so short). However, I am sorry to say that this did *not* prevent the crashes. I conclude that there may still be a bug in Mesa and/or kernel space DRM (although it's possible my patch isn't having the effect I intended - I'm not familiar enough with Mesa code base to be sure). diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index f0245fd..d1f4ac6 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -935,7 +935,9 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode, (void) check_draw_elements_data; #endif - vbo_validated_drawrangeelements(ctx, mode, index_bounds_valid, start, end, + //vbo_validated_drawrangeelements(ctx, mode, index_bounds_valid, start, end, + // count, type, indices, basevertex, 1, 0); + vbo_validated_drawrangeelements(ctx, mode, GL_FALSE, ~0, ~0, count, type, indices, basevertex, 1, 0); } -- You are receiving this mail because: You are the assignee for the bug. --14593488425.c4a9.3186 Date: Wed, 30 Mar 2016 14:40:42 +0000 MIME-Version: 1.0 Content-Type: text/html

Comment # 127 on bug 80419 from
The comment above from Jose Fonseca (and follow up from Feral's Edwin Smith)
imply that the problem here is with the game calling
glDrawRangeElementsBaseVertex with bad start/end values, resulting in the
indices being out-of-range which is illegal per the GL spec, and implying that
this is what causes the crash.

I have tried patching Mesa to effectively reduce glDrawRangeElementsBaseVertex
calls to glDrawElementsBaseVertex (i.e. same method but with no start/end
supplied). Patch follows below (inline because it is so short). However, I am
sorry to say that this did *not* prevent the crashes. I conclude that there may
still be a bug in Mesa and/or kernel space DRM (although it's possible my patch
isn't having the effect I intended - I'm not familiar enough with Mesa code
base to be sure).


diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
index f0245fd..d1f4ac6 100644
--- a/src/mesa/vbo/vbo_exec_array.c
+++ b/src/mesa/vbo/vbo_exec_array.c
@@ -935,7 +935,9 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode,
    (void) check_draw_elements_data;
 #endif

-   vbo_validated_drawrangeelements(ctx, mode, index_bounds_valid, start, end,
+   //vbo_validated_drawrangeelements(ctx, mode, index_bounds_valid, start,
end,
+   //               count, type, indices, basevertex, 1, 0);
+   vbo_validated_drawrangeelements(ctx, mode, GL_FALSE, ~0, ~0,
                    count, type, indices, basevertex, 1, 0);
 }


You are receiving this mail because:
  • You are the assignee for the bug.
--14593488425.c4a9.3186-- --===============0012845308== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============0012845308==--