summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2014-05-20docs: Add release notes for the 10.1.4 release.upstream-unstableCarl Worth1-0/+97
2014-05-20VERSION: Update to 10.1.4Carl Worth1-1/+1
In preparation for the 10.1.4 release.
2014-05-19nv50/ir: fix integer mul lowering for u32 x u32 -> high u32Ilia Mirkin1-3/+4
UNION appears to expect that all of its sources are conditionally defined. Otherwise it inserts an unpredicated mov instruction which overwrites the desired result. This fixes tests that use UMUL_HI, and much less directly, unsigned integer division by a constant, which uses this functionality in a peephole pass. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> Reviewed-by: Ben Skeggs <bskeggs@redhat.com> (cherry picked from commit 5b8f1a0f7c5b1412577a913d374192a2329fa615)
2014-05-16cherry-ignore: Roland and Michel agreed to drop these patches.Carl Worth1-0/+6
The first was apparently not entirely suitable for stable, (and buggy). And the second existed only to fix a bug in the first. So without the first, we don't need either.
2014-05-16mesa: fix double-freeing of dispatch tables inside glBegin/End.Brian Paul1-2/+2
We allocate dispatch tables for BeginEnd and OutsideBeginEnd. But when we destroy the context we were freeing the BeginEnd and Exec tables. If Exec==BeginEnd we did a double-free. This would happen if the context was destroyed while inside a glBegin/End pair. Now free the BeginEnd and OutsideBeginEnd pointers. Cc: "10.1", "10.2" <mesa-stable@lists.freedesktop.org> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> (cherry picked from commit ef6b6658f91bd5871739bdb71a08042f26abe389)
2014-05-14i965/vs: Use samplers for UBOs in the VS like we do for non-UBO pulls.Eric Anholt1-5/+18
Improves performance of a dolphin emulator trace I had laying around by 3.60131% +/- 0.995887% (n=128). Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 9245206cbfaaa4e18c1f3715eebb5f281070d772)
2014-05-14radeonsi: Fix anisotropic filtering state setupMichel Dänzer3-13/+12
Bring it back in line with r600g. I broke this in the original radeonsi bringup. :( Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78537 Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit c5828b0599a5c00ebab488b795c63a21f1dc53cd)
2014-05-14nv50: fix setting of texture ms info to be per-stageIlia Mirkin3-5/+9
Different textures may be bound to each slot for each stage. So we need to be able to upload ms parameters for each one without stages overwriting each other. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ben Skeggs <bskeggs@redhat.com> Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 863573b9cbeb26722fe7bdfbcc4ca6bffdc7dbf6)
2014-05-13nv50/ir: make sure to reverse cond codes on all the OP_SET variantsIlia Mirkin1-1/+2
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Ben Skeggs <bskeggs@redhat.com> Cc: "10.2 10.1" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 68f47cad0d23281309741cc47eeaa26ebbb41bca)
2014-05-13configure: error out if building GBM without driEmil Velikov1-0/+7
Both backends require --enable-dri, and building an empty libgbm makes little to no sense. Error out at configure to prevent the user from shooting themselves in the foot. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=78225 Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit e477d12c3396ded1607b6f57c15e100ca08f44f5)
2014-05-13radeonsi: Enable geometry shaders with LLVM 3.4.1Tom Stellard4-9/+13
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> CC: "10.1 10.2" <mesa-stable@lists.freedesktop.org> (cherry picked from commit 93c2ebbd83604263fa46351a7efcde382322024b)
2014-05-13configure.ac: Add LLVM_VERSION_PATCH to DEFINESTom Stellard1-1/+7
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> CC: "10.1 10.2" <mesa-stable@lists.freedesktop.org> (cherry picked from commit c5d000832579c17fdeff7ec8aaf7430d9b2e1049) Conflicts: configure.ac
2014-05-09docs: Add MD5 sums for 10.1.3Carl Worth1-0/+3
Just after making the release tar files.
2014-05-09docs: Add release notes for Mesa 10.1.3.Carl Worth1-0/+87
This is an emergencyt release to make a performance-regression fix available.
2014-05-09VERSION: Update to 10.1.3Carl Worth1-1/+1
For the emergency 10.1.3 release.
2014-05-09st/xa: Fix performance regression introduced by commit "Cache render target ↵Thomas Hellstrom1-1/+1
surface" The mentioned commit has the nasty side-effect of turning off accelerated copies. Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com> Reviewed-by: Rob Clark <robdclark@gmail.com> (cherry picked from commit 9306b7c171b29ac99f837e9efcd0281caf1d332e)
2014-05-08i965: Fix depth (array slices) computation for 1D_ARRAY render targets.Kenneth Graunke2-0/+5
1D array targets store the number of slices in the Height field. Fixes Piglit's spec/!OpenGL 3.2/layered-rendering/clear-color-all-types 1d_array single_level, at least when used with Meta clears. Cc: "10.2 10.1 10.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> (cherry picked from commit e6967270c75a5b669152127bb7a746d55f4407a6)
2014-05-08mesa: Fix MaxNumLayers for 1D array textures.Kenneth Graunke1-0/+2
1D array targets store the number of slices in the Height field. Cc: "10.2 10.1 10.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> (cherry picked from commit 5c399ca8e4ccae509a5116b3b9f41634a7ca4322)
2014-05-07glsl: fix bogus layout qualifier warningsTapani Pälli1-4/+7
Print out GL_ARB_explicit_attrib_location warnings only when parsing attribute that uses "location" qualifier. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77245 Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: "10.1 10.2" <mesa-stable@lists.freedesktop.org> (cherry picked from commit e65917f94e5fd13eb75f874fac4d77a29737e808)
2014-05-05get-pick-list.sh: Require explicit "10.1" for nominating stable patchesCarl Worth1-1/+1
A nomination unadorned with a specific version is now interpreted as being aimed at the 10.2 branch, (which was recently opened).
2014-05-05docs: Add MD5 sums for Mesa 10.1.2Carl Worth1-0/+3
Immediately after creating the 10.1.2 tar files.
2014-05-05docs: Add notes for the 10.1.2 release.Carl Worth1-0/+176
2014-05-05Update VERSION to 10.1.2Carl Worth1-1/+1
In preparation for the 10.1.2 release.
2014-05-05dri3: Enable GLX_MESA_query_renderer on DRI3 tooIan Romanick4-1/+61
This should have happend around the time of commit 4680d23, but Keith's DRI3 patches and my GLX_MESA_query_renderer patches crossed in the mail. I don't have a working DRI3 setup, so I haven't been able to actually verify this. I'm hoping that someone can piglit this for me on DRI3... It's also unfortunate the DRI2 and DRI3 can't share more code. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Cc: Keith Packard <keithp@keithp.com> Cc: "10.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit 625bdd64e5ea3327d4459b1ccccff8dab89129d0) Conflicts: src/glx/dri3_glx.c During the cherry-pick, the following commit was squashed in as well: glx: Conditionally compile GLX_MESA_query_renderer DRI3 support Missed out with commit 625bdd64e5ea3327d4459b1ccccff8dab89129d0. Cc: "10.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit 0b307afd57082f0d4a0e8ba19093d313c9fb46ad)
2014-05-05glsl: Apply the link error conditions to GL_ARB_fragment_coord_conventionsAnuj Phogat3-1/+14
Link error conditions added in previous patch are equally applicable to GL_ARB_fragment_coord_conventions implementation. Extension's spec says: "If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared in all the fragment shaders in that program that have a static use of gl_FragCoord. All redeclarations of gl_FragCoord in all fragment shaders in a single program must have the same set of qualifiers." Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 9bcb0a85321c128b6e5ff8fc6694c2eff613e65a with some manual backporting)
2014-05-05glsl: Link error if fs defines conflicting qualifiers for gl_FragCoordAnuj Phogat5-1/+113
GLSL 1.50 spec says: "If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared in all the fragment shaders in that program that have a static use gl_FragCoord. All redeclarations of gl_FragCoord in all fragment shaders in a single program must have the same set of qualifiers." This patch causes the shader link to fail if we have multiple fragment shaders with conflicting layout qualifiers for gl_FragCoord. V2: Restructure the code and add conditions to correctly handle the following case: fragment shader 1: layout(origin_upper_left) in vec4 gl_FragCoord; void main() { foo(); gl_FragColor = gl_FragData; } fragment shader 2: layout(pixel_center_integer) in vec4 gl_FragCoord; void foo() { } V3: Allow linking in the following case: fragment shader 1: void main() { foo(); gl_FragColor = gl_FragCoord; } fragment shader 2: in vec4 gl_FragCoord; void foo() { ... } Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 35f11e85cbe82b4bb77535e84e5515a5c49f67a6 with some manual backporting)
2014-05-05glsl: Use switch to allow adding more shader typesAnuj Phogat1-13/+20
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: <mesa-stable@lists.freedesktop.org>
2014-05-05cherry-ignore: Drop an ignored patch now that piglit has been updated.Carl Worth1-4/+0
This patch was ignored when we saw it causing a piglit test to regress. That piglit test has been determined to have been incorrect. It has been fixed so that this patch is now clearly a bug fix, not a regression.
2014-05-05i965: Add glBlitFramebuffer to commands affected by conditional renderingAnuj Phogat1-0/+8
Fixes failures in Khronos OpenGL CTS test conditional_render_test9 Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 1d350b9e228462390b1883abace24c15d4741932)
2014-05-05mesa: Allow FLOAT_32_UNSIGNED_INT_24_8_REV in get_tex_depth_stencil()Anuj Phogat1-2/+2
Fixes a crash in Khronos OpenGL CTS packed_pixels tests. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit c1743707a1286a71eb4e82b976eb3f1815f2ecf4)
2014-05-05mesa: Add support to unpack depth-stencil texture in to ↵Anuj Phogat2-1/+87
FLOAT_32_UNSIGNED_INT_24_8_REV V2: Follow the new naming convention for unpack functions. Use double precision for converting Z24 to a float. V3: Unpack stencil value to most significant byte. Use 'struct z32f_x24s8' type. V4: Unpack stencil value to least significant byte. Add a comment to clarify stencil packing. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 29b8e894d15cf960c624189fad7d0cf1fdc9c405)
2014-05-05mesa: Add new helper function _mesa_unpack_depth_stencil_row()Anuj Phogat3-6/+32
This patch makes non-functional changes in the code. New helper function added here will make it easier to support more data types in the following patches. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 7a8045d2f7b7f749a555dbe5f51c327ab0cd6cc8)
2014-05-05mesa: Allow srcFormat=GL_DEPTH_STENCIL in _mesa_texstore_xx_xx() functionsAnuj Phogat1-2/+4
_mesa_texstore_z24_s8() and _mesa_texstore_z32f_x24s8() are capable of handling GL_DEPTH_STENCIL format. So, allow it in both the functions. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 1a8f9ba9b3aa8bed2047ff7c0b5816edb9c9cb62)
2014-05-05mesa: Add missing types in _mesa_texstore_xx_xx() functionsAnuj Phogat1-2/+6
Depth-stencil teture targets are allowed to use source data of type GL_UNSIGNED_INT_24_8_EXT and GL_FLOAT_32_UNSIGNED_INT_24_8_REV. Fixes few crashes in Khronos OpenGL CTS packed_pixels tests. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit aeb9d4495dc32bcb457045b4ea8f4e5f0d4fc8c8)
2014-05-05i965: Fix crash in do_blit_readpixels()Anuj Phogat1-0/+7
Fixes a crash in Khronos CTS packed_pixels tests. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit d714b20eb4617f24b496a09028a90fdd8c19b5bd)
2014-05-05mesa: Add error condition for format=STENCIL_INDEX in glGetTexImage()Anuj Phogat1-0/+5
From OpenGL 4.0 spec, page 306: "Calling GetTexImage with a format of STENCIL_INDEX causes the error INVALID_ENUM." Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 5388fc157e2b78d67a05dc923b98857e6449cf1e)
2014-05-05mesa: Add entry for extension ARB_texture_stencil8Anuj Phogat1-0/+1
V2: Alphabetize the new entry Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 340658e44f87c98e840b98029c9b5a81d1bed837)
2014-05-05glsl: Compile error if fs uses gl_FragCoord before first redeclarationAnuj Phogat1-0/+17
Section 4.3.8.1, page 39 of GLSL 1.50 spec says: "Within any shader, the first redeclarations of gl_FragCoord must appear before any use of gl_FragCoord." GLSL compiler should generate an error in following case: vec4 p = gl_FragCoord; layout(origin_upper_left) in vec4 gl_FragCoord; void main() { } Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit a751adf07117ec4b3659fe60d0a833ebfcd4f840)
2014-05-05glsl: Compile error if fs defines conflicting qualifiers for gl_FragCoordAnuj Phogat2-0/+70
GLSL 1.50 spec says: "If gl_FragCoord is redeclared in any fragment shader in a program, it must be redeclared in all the fragment shaders in that program that have a static use gl_FragCoord. All redeclarations of gl_FragCoord in all fragment shaders in a single program must have the same set of qualifiers." This patch makes the glsl compiler to generate an error if we have a fragment shader defined with conflicting layout qualifier declarations for gl_FragCoord. For example: layout(origin_upper_left, pixel_center_integer) in vec4 gl_FragCoord; layout(pixel_center_integer) in vec4 gl_FragCoord; void main() { } V2: Some code refactoring for better readability. Add compiler error conditions for redeclarations like: layout(origin_upper_left) in vec4 gl_FragCoord; layout(origin_upper_left, pixel_center_integer) in vec4 gl_FragCoord; and in vec4 gl_FragCoord; layout(origin_upper_left, pixel_center_integer) in vec4 gl_FragCoord; V3: Simplify function is_conflicting_fragcoord_redeclaration() V4: Check for null pointer before doing strcmp(var->name, "gl_FragCoord"). Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: <mesa-stable@lists.freedesktop.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 581e4acb0d68eb1063df3919e19e0ef9d86eebff)
2014-05-05mesa: Use location VERT_ATTRIB_GENERIC0 for vertex attribute 0Anuj Phogat3-29/+40
In OpenGL 3.1 attribute 0 becomes non-magic, just like in OpenGL ES 2.0. Earlier versions of OpenGL used attribute 0 exclusively for vertex position. V2: Add a utility function _mesa_attr_zero_aliases_vertex() in varray.h Fixes 4 Khronos OpenGL CTS failures: glGetVertexAttrib depth24_basic depth24_precision rgb8_rgba8_rgb Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 49c71050de1e0df451e29621558b4adfefb7e098)
2014-05-05mesa: Fix querying location of nth element of an array variableAnuj Phogat1-5/+66
This patch makes changes to the behavior of glGetAttribLocation(), glGetFragDataLocation() and glGetFragDataIndex() functions. Code changes handle a case described in following example: shader program: layout(location = 1)in vec4[4] a; void main() { } Currently, glGetAttribLocation("a") returns 1. glGetAttribLocation("a[i]"), where i = {0, 1, 2, 3}, returns -1. But the expected locations for array elements are: 1, 2, 3 and 4 respectively. This clarification came up with the addition of ARB_program_interface_query to OpenGL 4.3. From Page 326 (page 347 of the PDF) of OpenGL 4.3 spec: "Otherwise, the command is equivalent to GetProgramResourceLocation(program, PROGRAM_INPUT, name);" And, From Page 101 (page 122 of the PDF) of OpenGL 4.3 spec: "A string provided to GetProgramResourceLocation or GetProgramResourceLocationIndex is considered to match an active variable if • the string exactly matches the name of the active variable; • if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string; or • if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer (with no "+" sign, extra leading zeroes, or whitespace) identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero." V2: Simplify get_matching_index() function. Add relevant text from OpenGL spec in commit message. Fixes failures in Khronos OpenGL CTS tests: explicit_attrib_location_room draw_instanced_max_vertex_attribs Proprietary linux drivers of NVIDIA (331.49) matches the behavior expected by OpenGL 4.3 spec. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit dc75479b7a7b9207d9d7c9487085ad14fa5d26cc)
2014-05-05glsl: Allow overlapping locations for vertex input attributesAnuj Phogat1-15/+72
Currently overlapping locations of input variables are not allowed for all the shader types in OpenGL and OpenGL ES. From OpenGL ES 3.0 spec, page 56: "Binding more than one attribute name to the same location is referred to as aliasing, and is not permitted in OpenGL ES Shading Language 3.00 vertex shaders. LinkProgram will fail when this condition exists. However, aliasing is possible in OpenGL ES Shading Language 1.00 vertex shaders." Taking in to account what different versions of OpenGL and OpenGL ES specs say about aliasing: - It is allowed only on vertex shader input attributes in OpenGL (2.0 and above) and OpenGL ES 2.0. - It is explictly disallowed in OpenGL ES 3.0. Fixes Khronos CTS failing test: explicit_attrib_location_vertex_input_aliased.test See more details about this at below mentioned khronos bug. V2: Fix the case where location exceeds the maximum allowed attribute location. V3: Simplify the condition added in V2. Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com> Cc: "9.2 10.0 10.1" <mesa-stable@lists.freedesktop.org> Bugzilla: Khronos #9609 Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 8c61b6a99b221439a8109c5a5cd03b7bf065d373)
2014-05-05i965: Actually emit PIPELINE_SELECT and 3DSTATE_VF_STATISTICS.Kenneth Graunke3-15/+8
For platforms using hardware contexts (currently Gen6+), we failed to emit PIPELINE_SELECT and 3DSTATE_VF_STATISTICS, instead emitting MI_NOOP for both. During one of the context initialization reordering patches, we accidentally moved brw_init_state before we set brw->CMD_PIPELINE_SELECT and brw->CMD_VF_STATISTICS. So, when brw_init_state uploaded initial GPU state (brw_init_state -> brw_upload_initial_gpu_state -> brw_upload_invariant_state), these would be 0 (MI_NOOP). Storing the commands in the context is not worthwhile. We have many generation checks in our state upload code, and for platforms with hardware contexts, this only gets called once per GL context anyway. The cost is negligable, and it's easy to botch context creation ordering. This may fix hangs on Gen6+ when using the media pipeline. Cc: "10.0 10.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Ben Widawsky <ben@bwidawsk.net> (cherry picked from commit ac30e1adb49ec6947f740b47d90f8403fe416314) Conflicts: src/mesa/drivers/dri/i965/brw_context.h
2014-05-05i965: Don't enable reset notification support on Gen4-5.Kenneth Graunke1-4/+9
arekm reported that using Chrome with GPU acceleration enabled on GM45 triggered the hw_ctx != NULL assertion in brw_get_graphics_reset_status. We definitely do not want to advertise reset notification support on Gen4-5 systems, since it needs hardware contexts, and we never even request a hardware context on those systems. Cc: "10.1" <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75723 Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit 0380ec467d78f40b5c8134158ca48b4c5378b282)
2014-05-05i965: Fix render-to-texture in non-FinishRenderTexture cases.Eric Anholt7-27/+87
We've had several problems now with FinishRenderTexture not getting called enough, and we're ready to just give up on it ever doing what we need. In particular, an upcoming Steam title had rendering bugs that could be fixed by always_flush_cache=true. Instead of hoping Mesa core can figure out when we need to flush our caches, just track what BOs we've rendered to in a set, and when we render from a BO in that set, emit a flush and clear the set. There's some overhead to keeping this set, but most of that is just hashing the pointer -- it turns out our set never even gets very large, because cache flushes are so common (even on cairo-gl). No statistically significant performance difference in cairo-gl (n=100), despite spending ~.5% CPU in these set operations. v1: (Original patch by Eric Anholt.) v2: (Changes by Ken Graunke.) - Rebase forward from May 7th 2013 -> March 4th 2014. - Drop the FinishRenderTexture hook entirely; after rebasing the patch, the hook was just an empty function. - Move the brw_render_cache_set_clear() call from intel_batchbuffer_emit_flush() to brw_emit_pipe_control_flush(). In theory, this could catch more cases where we've flushed. - Consider stencil as a possible texturing source. v3: (changes by anholt): - Move set_clear() back to emit_mi_flush() -- it means we can drop more forced flushes from the code. In the previous location, it wouldn't have been called when we wanted pre-gen6. - Move the set clear from batch init to reset -- it should be empty at the start of every batch, since the kernel handled any inter-batch flush for us. v4: Drop the debug code in set.c that I accidentally committed. v5: Back port to 10.1 stable branch (remove reference to stencil texture.) Signed-off-by: Eric Anholt <eric@anholt.net> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Tested-by: Dylan Baker <baker.dylan.c@gmail.com> [v2] Conflicts: src/mesa/drivers/dri/i965/brw_draw.c src/mesa/drivers/dri/i965/intel_fbo.h
2014-05-05cherry-ignore: Ignore a patch causing a regressionCarl Worth1-0/+4
This may be just a bogus test. I'm waiting to see what the bugzilla decides: https://bugs.freedesktop.org/show_bug.cgi?id=77702
2014-05-05st/mesa: Fix NULL pointer dereference for incomplete framebuffersMichel Dänzer1-1/+6
This can happen with glamor, which uses EGL_KHR_surfaceless_context and only explicitly binds GL_READ_FRAMEBUFFER for glReadPixels. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Brian Paul <brianp@vmware.com> (cherry picked from commit 136c437cea3ebc9541735bb40951128e1210f06b)
2014-05-05egl: Protect use of gbm_dri with ifdef HAVE_DRM_PLATFORMAnder Conselvan de Oliveira1-0/+2
Otherwise it fails to compile if the drm egl platform is disabled. Cc: "10.0" "10.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit 17860309f17de78e729f77e86101004f61f6bcf3)
2014-05-05wayland: Fix the logic in disabling the prime capabilityNeil Roberts1-1/+1
It looks like this bit of code is trying to disable the prime capability if the driver doesn't support createImageFromFds. However the logic looks a bit broken and what it would actually do is disable all other capabilities apart from prime. This patch fixes it to actually disable prime. Cc: "10.0" "10.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit 63d4661ab28c036ab000f94812a91d93d538a72a)
2014-05-05gbm/dri: Fix out-of-memory error path in dri_device_create()Ander Conselvan de Oliveira1-0/+2
Cc: "10.0" "10.1" <mesa-stable@lists.freedesktop.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> (cherry picked from commit aa91fe1c09e066751c5419adb7810745336bd051)