Mesa 7.11.1 Release Notes / November 17, 2011

Mesa 7.11.1 is a bug fix release which fixes bugs found since the 7.11 release.

Mesa 7.11 implements the OpenGL 2.1 API, but the version reported by glGetString(GL_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 2.1.

See the Compiling/Installing page for prerequisites for DRI hardware acceleration.

MD5 checksums

ac0181a4076770fb657c1169af43aa09  MesaLib-7.11.1.tar.gz
a77307102cee844ff6544ffa8fafeac1  MesaLib-7.11.1.tar.bz2
2cb2b9ecb4fb7d1a6be69346ee886952  MesaGLUT-7.11.1.tar.gz
3f54e314290d4dacbab089839197080b  MesaGLUT-7.11.1.tar.bz2

New features


Bug fixes

This list is likely incomplete.

  • Bug 3165 - texImage.IsCompressed and texImage.CompressedSize issues

  • Bug 23525 - Software rendering on QEMU guests badly broken

  • Bug 28125 - DRI2 prevents indirect glx

  • Bug 34628 - [ilk] skybox errors in quake4

  • Bug 36371 - r200: piglit readPixSanity failure

  • Bug 36669 - EmitNoMainReturn set to 1 doesn’t make the GLSL compiler lower all the RET opcodes

  • Bug 36939 - multitexturing is messed up in quake wars (regression)

  • Bug 37907 - [swrast] SIGSEGV swrast/s_depth.c:569

  • Bug 38163 - Gnome Shell Display Bug

  • Bug 38625 - ast_to_hir.cpp:1761: const glsl_type* process_array_type(YYLTYPE*, const glsl_type*, ast_node*, _mesa_glsl_parse_state*): Assertion `dummy_instructions.is_empty()’ failed.

  • Bug 38729 - [softpipe] sp_quad_depth_test.c:215:convert_quad_stencil: Assertion `0’ failed.

  • Bug 38863 - [IVB]GPU hang when running 3D games like openarena

  • Bug 39193 - [llvmpipe and r600g] glCheckFramebufferStatusEXT segfaults in Gallium when checking status on a framebuffer bound to a texture that’s bound to a pixmap

  • Bug 39651 - [glsl] Assertion failure when implicitly converting out parameters

  • Bug 39991 - [regression]GL_PALETTE8_RGBA8_OES format of glCompressedTexImage2D will cause err GL_INVALID_ENUM with GLES1.x

  • Bug 40022 - [i915] out-of-bounds write src/mesa/drivers/dri/i915/i915_fragprog.c:321

  • Bug 40062 - in etqw the strogg radar is black (regression)

  • Bug 40324 - [SNB] gpu hang in mesa 7.11

  • Bug 40533 - i915: piglit glean/readPixSanity: DRI2SwapBuffers: BadDrawable (invalid Pixmap or Window parameter)

  • Bug 41096 - [sandybridge-m-gt2+] GPU lockup render.IPEHR: 0x7a000002

  • Bug 41969 - The Mesa meta save/restore code doesn’t always save the active program

  • Bug 42175 - RV730: Display errors in glxgears & WebGL

  • Bug 42268 - [bisected] oglc pbo(negative.invalidOffsetValue) aborts on 7.11 branch


The full set of changes can be viewed by using the following GIT command:

git log mesa-7.11..mesa-7.11.1

Adam Jackson (2):

  • drisw: Remove cargo culting that breaks GLX 1.3 ctors

  • glx: Don’t enable INTEL_swap_event unconditionally

Alex Deucher (1):

  • r600g: fix up vs export handling

Ben Widawsky (1):

  • intel: GetBuffer fix

Brian Paul (15):

  • docs: add 7.11 md5 sums

  • docs: news item for 7.11 release

  • st/mesa: Convert size assertions to conditionals in st_texture_image_copy.

  • softpipe: add missing stencil format case in convert_quad_stencil()

  • mesa: fix texstore addressing bugs for depth/stencil formats

  • mesa: add missing breaks for GL_TEXTURE_CUBE_MAP_SEAMLESS queries

  • swrast: don’t try to do depth testing if there’s no depth buffer

  • meta: fix/add checks for GL_EXT_framebuffer_sRGB

  • mesa: fix PACK_COLOR_5551(), PACK_COLOR_1555() macros

  • meta: fix broken sRGB mipmap generation

  • mesa: add _NEW_CURRENT_ATTRIB in _mesa_program_state_flags()

  • mesa: fix error handling for dlist image unpacking

  • mesa: generate GL_INVALID_OPERATION in glIsEnabledIndex() between Begin/End

  • mesa: fix incorrect error code in _mesa_FramebufferTexture1D/3DEXT()

  • mesa: fix format/type check in unpack_image() for bitmaps

Carl Simonson (1):

  • i830: Add missing vtable entry for i830 from the hiz work.

Carl Worth (5):

  • glcpp: Fix two (or more) successive applications of token pasting

  • glcpp: Test a non-function-like macro using the token paste operator

  • glcpp: Implement token pasting for non-function-like macros

  • glcpp: Raise error if defining any macro containing two consecutive underscores

  • glcpp: Add a test for #elif with an undefined macro.

Chad Versace (5):

  • glsl: Add method glsl_type::can_implicitly_convert_to()

  • glsl: Fix implicit conversions in non-constructor function calls

  • glsl: Remove ir_function.cpp:type_compare()

  • glsl: Fix conversions in array constructors

  • x86-64: Fix compile error with clang

Chia-I Wu (3):

  • glsl: empty declarations should be valid

  • intel: rename intel_extensions_es2.c to intel_extensions_es.c

  • intel: fix GLESv1 support

Chris Wilson (1):

  • i915: out-of-bounds write in calc_live_regs()

Christopher James Halse Rogers (1):

  • glx/dri2: Paper over errors in DRI2Connect when indirect

David Reveman (1):

  • i915g: Fix off-by-one in scissors.

Eric Anholt (16):

  • mesa: Don’t skip glGetProgramEnvParam4dvARB if there was already an error.

  • mesa: Fix glGetUniform() type conversions.

  • mesa: Add support for Begin/EndConditionalRender in display lists.

  • mesa: Throw an error instead of asserting for condrender with query == 0.

  • mesa: Throw an error when starting conditional render on an active query.

  • mesa: Don’t skip glGetProgramLocalParam4dvARB if there was already an error.

  • glsl: Allow ir_assignment() constructor to not specify condition.

  • glsl: Clarify error message about whole-array assignment in GLSL 1.10.

  • glsl: When assigning to a whole array, mark the array as accessed.

  • glsl: When assiging from a whole array, mark it as used.

  • i965/fs: Respect ARB_color_buffer_float clamping.

  • i965: Add missing _NEW_POLYGON flag to polygon stipple upload.

  • i965: Fix polygon stipple offset state flagging.

  • intel: Mark MESA_FORMAT_X8_Z24 as always supported.

  • mesa: Don’t error on glFeedbackBuffer(size = 0, buffer = NULL)

  • glsl: Fix gl_NormalMatrix swizzle setup to match i965’s invariants.

Henri Verbeet (6):

  • mesa: Also set the remaining draw buffers to GL_NONE when updating just the first buffer in _mesa_drawbuffers().

  • r600g: Support the PIPE_FORMAT_R16_FLOAT colorformat.

  • mesa: Check the texture against all units in unbind_texobj_from_texunits().

  • mesa: Allow sampling from units >= MAX_TEXTURE_UNITS in shaders.

  • mesa: Use the Elements macro for the sampler index assert in validate_samplers().

  • mesa: Fix a couple of TexEnv unit limits.

Ian Romanick (17):

  • mesa: Add utility function to get base format from a GL compressed format

  • mesa: Return the correct internal fmt when a generic compressed fmt was used

  • mesa: Make _mesa_get_compressed_formats match the texture compression specs

  • linker: Make linker_error set LinkStatus to false

  • linker: Make linker_{error,warning} generally available

  • mesa: Ensure that gl_shader_program::InfoLog is never NULL

  • ir_to_mesa: Use Add linker_error instead of fail_link

  • ir_to_mesa: Emit warnings instead of errors for IR that can’t be lowered

  • i915: Fail without crashing if a Mesa IR program uses too many registers

  • i915: Only emit program errors when INTEL_DEBUG=wm or INTEL_DEBUG=fallbacks

  • mesa: Add GL_OES_compressed_paletted_texture formats to _mesa_is_compressed_format

  • mesa: Add GL_OES_compressed_paletted_texture formats to _mesa_base_tex_format

  • mesa: Refactor expected texture size check in cpal_get_info

  • mesa: Add _mesa_cpal_compressed_format_type

  • mesa: Refactor compressed texture error checks to work with paletted textures

  • mesa: Remove redundant compressed paletted texture error checks

  • mesa: Advertise GL_OES_compressed_paletted_texture in OpenGL ES1.x

Jeremy Huddleston (3):

  • apple: Silence some debug spew

  • apple: Use the correct (OpenGL.framework) glViewport and glScissor during init

  • apple: Implement applegl_unbind_context

José Fonseca (1):

  • docs: Update llvmpipe docs.

Kenneth Graunke (12):

  • glsl: Avoid massive ralloc_strndup overhead in S-Expression parsing.

  • mesa: In validate_program(), initialize errMsg for safety.

  • i965/gen5+: Fix incorrect miptree layout for non-power-of-two cubemaps.

  • i965: Use proper texture alignment units for cubemaps on Gen5+.

  • i965: Fix incorrect maximum PS thread count shift on Ivybridge.

  • i965: Emit depth stalls and flushes before changing depth state on Gen6+.

  • i965/fs: Allow SIMD16 with control flow on Ivybridge.

  • i965: Allow SIMD16 color writes on Ivybridge.

  • i965: Fix inconsistent indentation in brw_eu_emit.c.

  • intel: Depth format fixes

  • i965: Apply post-sync non-zero workaround to homebrew workaround.

  • mesa/get: Move MAX_LIGHTS from GL/ES2 to GL/ES1.

Kristian Høgsberg (1):

  • glx: Don’t flush twice if we fallback to dri2CopySubBuffer

Marc Pignat (1):

  • drisw: Fix 24bpp software rendering, take 2

Marcin Baczyński (2):

  • configure: fix gcc version check

  • configure: allow C{,XX}FLAGS override

Marcin Slusarz (3):

  • nouveau: fix nouveau_fence leak

  • nouveau: fix crash during fence emission

  • nouveau: fix fence hang

Marek Olšák (19):

  • vbo: do not call _mesa_max_buffer_index in debug builds

  • winsys/radeon: fix space checking

  • r300/compiler: fix a warning that a variable may be uninitialized

  • r300/compiler: remove an unused-but-set variable and simplify the code

  • u_vbuf_mgr: cleanup original vs real vertex buffer arrays

  • u_vbuf_mgr: don’t take per-instance attribs into acc. when computing max index

  • u_vbuf_mgr: fix max_index computation for large src_offset

  • u_vbuf_mgr: s/u_vbuf_mgr_/u_vbuf_

  • u_vbuf_mgr: remove unused flag U_VBUF_UPLOAD_FLUSHED

  • u_vbuf_mgr: rework user buffer uploads

  • u_vbuf_mgr: fix uploading with a non-zero index bias

  • fix xlib-based softpipe build

  • r600g: add index_bias to index buffer bounds

  • r300g: fix rendering with a non-zero index bias in draw_elements_immediate

  • Revert “r300g: fix rendering with a non-zero index bias in draw_elements_immediate”

  • pb_bufmgr_cache: flush cache when create_buffer fails and try again

  • r300g: don’t return NULL in resource_from_handle if the resource is too small

  • r600g: set correct tiling flags in depth info

  • r300g: don’t call u_trim_pipe_prim in r300_swtcl_draw_vbo

Michel Dänzer (4):

  • st/mesa: Finalize texture on render-to-texture.

  • glx/dri2: Don’t call X server for SwapBuffers when there’s no back buffer.

  • gallium/util: Add macros for converting from little endian to CPU byte order.

  • r300g: Fix queries on big endian hosts.

Neil Roberts (1):

  • meta: Fix saving the active program

Paul Berry (18):

  • glsl: Lower unconditional return statements.

  • glsl: Refactor logic for determining whether to lower return statements.

  • glsl: lower unconditional returns and continues in loops.

  • glsl: Use foreach_list in lower_jumps.cpp

  • glsl: In lower_jumps.cpp, lower both branches of a conditional.

  • glsl: Lower break instructions when necessary at the end of a loop.

  • glsl: improve the accuracy of the radians() builtin function

  • glsl: improve the accuracy of the atan(x,y) builtin function.

  • Revert “glsl: Skip processing the first function’s body in do_dead_functions().”

  • glsl: Emit function signatures at toplevel, even for built-ins.

  • glsl: Constant-fold built-in functions before outputting IR

  • glsl: Check array size is const before asserting that no IR was generated.

  • glsl: Perform implicit type conversions on function call out parameters.

  • glsl: Fix type error when lowering integer divisions

  • glsl: Rework oversize array check for gl_TexCoord.

  • glsl: Remove field array_lvalue from ir_variable.

  • glsl hierarchical visitor: Do not overwrite base_ir for parameter lists.

  • glsl: improve the accuracy of the asin() builtin function.

Tobias Droste (1):

  • r300/compiler: simplify code in peephole_add_presub_add

Tom Fogal (1):

  • Only use gcc visibility support with gcc4+.

Tom Stellard (1):

  • r300/compiler: Fix regalloc for values with multiple writers

Vadim Girlin (5):

  • st/mesa: flush bitmap cache on query and conditional render boundaries

  • r600g: use backend mask for occlusion queries

  • r600g: take into account force_add_cf in pops

  • r600g: fix check_and_set_bank_swizzle

  • r600g: fix replace_gpr_with_pv_ps

Yuanhan Liu (17):

  • i965: fix the constant interp bitmask for flat mode

  • mesa: fix error handling for glEvalMesh1/2D

  • mesa: fix error handling for some glGet* functions

  • mesa: fix error handling for glTexEnv

  • mesa: fix error handling for glIsEnabled

  • mesa: fix error handling for glPixelZoom

  • mesa: fix error handling for glSelectBuffer

  • mesa: fix error handling for glMapBufferRange

  • mesa: fix error handling for glMaterial*

  • intel: fix the wrong code to detect null texture.

  • mesa: add a function to do the image data copy stuff for save_CompressedTex(Sub)Image

  • i965: setup address rounding enable bits

  • mesa: generate error if pbo offset is not aligned with the size of specified type

  • mesa: fix inverted pbo test error at _mesa_GetnCompressedTexImageARB

  • mesa: handle the pbo case for save_Bitmap

  • mesa: handle PBO access error in display list mode

  • intel: don’t call unmap pbo if pbo is not mapped