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
dfcb11516c1730f3981b55a65a835623  MesaLib-7.11.1.zip
2cb2b9ecb4fb7d1a6be69346ee886952  MesaGLUT-7.11.1.tar.gz
3f54e314290d4dacbab089839197080b  MesaGLUT-7.11.1.tar.bz2
5d66c7ee8c5cc2f27e1ffb037ad4172c  MesaGLUT-7.11.1.zip

New features

None.

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

Changes

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
  • configure.ac: 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