Mesa 12.0.2 Release Notes / September 2, 2016 ============================================= Mesa 12.0.2 is a bug fix release which fixes bugs found since the 12.0.1 release. Mesa 12.0.2 implements the OpenGL 4.3 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don't support all the features required in OpenGL 4.3. OpenGL 4.3 is **only** available if requested at context creation because compatibility contexts are not supported. SHA256 checksums ---------------- :: a08565ab1273751ebe2ffa928cbf785056594c803077c9719d0763da780f2918 mesa-12.0.2.tar.gz d957a5cc371dcd7ff2aa0d87492f263aece46f79352f4520039b58b1f32552cb mesa-12.0.2.tar.xz New features ------------ None Bug fixes --------- This list is likely incomplete. - `Bug 69622 `__ - eglTerminate then eglMakeCurrent crahes - `Bug 89599 `__ - symbol 'x86_64_entry_start' is already defined when building with LLVM/clang - `Bug 91342 `__ - Very dark textures on some objects in indoors environments in Postal 2 - `Bug 92306 `__ - GL Excess demo renders incorrectly on nv43 - `Bug 94148 `__ - Framebuffer considered invalid when a draw call is done before glCheckFramebufferStatus - `Bug 96274 `__ - [NVC0] Failure when compiling compute shader: Assertion \`bb->getFirst()->serial <= bb->getExit()->serial' failed - `Bug 96358 `__ - SSO: wrong interface validation between GS and VS (regresion due to latest gles 3.1) - `Bug 96381 `__ - Texture artifacts with immutable texture storage and mipmaps - `Bug 96762 `__ - [radeonsi,apitrace] Firewatch: nothing rendered in scrollable (text) areas - `Bug 96835 `__ - "gallium: Force blend color to 16-byte alignment" crash with "-march=native -O3" causes some 32bit games to crash - `Bug 96850 `__ - Crucible tests fail for 32bit mesa - `Bug 96908 `__ - [radeonsi] MSAA causes graphical artifacts - `Bug 96911 `__ - webgl2 conformance2/textures/misc/tex-mipmap-levels.html crashes 12.1 Intel driver - `Bug 96971 `__ - invariant qualifier is not valid for shader inputs - `Bug 97039 `__ - The Talos Principle and Serious Sam 3 GPU faults - `Bug 97207 `__ - [IVY BRIDGE] Fragment shader discard writing to depth - `Bug 97214 `__ - X not running with error "Failed to make EGL context current" - `Bug 97225 `__ - [i965 on HD4600 Haswell] xcom switch to ingame cinematics cause segmentation fault - `Bug 97231 `__ - GL_DEPTH_CLAMP doesn't clamp to the far plane - `Bug 97307 `__ - glsl/glcpp/tests/glcpp-test regression - `Bug 97331 `__ - glDrawElementsBaseVertex doesn't work in display list on i915 - `Bug 97351 `__ - DrawElementsBaseVertex with VBO ignores base vertex on Intel GMA 9xx in some cases - `Bug 97426 `__ - glScissor gives vertically inverted result - `Bug 97476 `__ - Shader binaries should not be stored in the PipelineCache - `Bug 97567 `__ - [SNB, ILK] ctl, piglit regressions in mesa 12.0.2rc1 Changes ------- Andreas Boll (1): - configure.ac: Use ${datarootdir} for --with-vulkan-icddir help string too Bernard Kilarski (1): - glx: fix error code when there is no context bound Brian Paul (4): - svga: handle mismatched number of samplers, sampler views - mesa: use \_mesa_clear_texture_image() in clear_texture_fields() - swrast: fix incorrectly positioned putImage() in swrast driver - mesa: fix format conversion bug in get_tex_rgba_uncompressed() Chad Versace (2): - i965: Fix miptree layout for EGLImage-based renderbuffers - i965: Respect miptree offsets in intel_readpixels_tiled_memcpy() Christian König (1): - st/mesa: fix reference counting bug in st_vdpau Chuck Atkins (1): - swr: Refactor checks for compiler feature flags Daniel Scharrer (1): - mesa: Fix fixed function spot lighting on newer hardware (again) Dave Airlie (2): - anv: fix writemask on blit fragment shader. - st/glsl_to_tgsi: fix st_src_reg_for_double constant. Emil Velikov (15): - docs: add sha256 checksums for 12.0.1 - mesa: automake: list builddir before srcdir - mesa: scons: list builddir before srcdir - i965: store reference to the context within struct brw_fence (v2) - anv: remove internal 'validate' layer - anv: automake: use VISIBILITY_CFLAGS to restrict symbol visibility - anv: automake: build with -Bsymbolic - anv: do not export the Vulkan API - anv: remove dummy VK_DEBUG_MARKER_EXT entry points - isl: automake: use VISIBILITY_CFLAGS to restrict symbol visibility - cherry-ignore: temporary(?) drop "a4xx: make sure to actually clamp depth" - i915: Check return value of screen->image.loader->getBuffers - Revert "i965/miptree: Set logical_depth0 == 6 for cube maps" - glx/glvnd: list the strcmp arguments in correct order - Update version to 12.0.2 Eric Anholt (4): - vc4: Close our screen's fd on screen close. - vc4: Disable early Z with computed depth. - vc4: Fix a leak of the src[] array of VPM reads in optimization. - vc4: Fix leak of the bo_handles table. Francisco Jerez (3): - i965: Emit SKL VF cache invalidation W/A from brw_emit_pipe_control_flush. - i965: Make room in the batch epilogue for three more pipe controls. - i965: Fix remaining flush vs invalidate race conditions in brw_emit_pipe_control_flush. Haixia Shi (1): - platform_android: prevent deadlock in droid_swap_buffers Ian Romanick (5): - mesa: Strip arrayness from interface block names in some IO validation - glsl: Pack integer and double varyings as flat even if interpolation mode is none - glcpp: Track the actual version instead of just the version_resolved flag - glcpp: Only disallow #undef of pre-defined macros on GLSL ES >= 3.00 shaders - glsl: Mark cube map array sampler types as reserved in GLSL ES 3.10 Ilia Mirkin (16): - mesa: etc2 online compression is unsupported, don't attempt it - st/mesa: return appropriate mesa format for ETC texture formats - mesa: set \_NEW_BUFFERS when updating texture bound to current buffers - nv50,nvc0: srgb rendering is only available for rgba/bgra - vbo: allow DrawElementsBaseVertex in display lists - gallium/util: add helper to compute zmin/zmax for a viewport state - nv50,nvc0: fix depth range when halfz is enabled - nv50/ir: fix bb positions after exit instructions - vbo: add basevertex when looking up elements for vbo splitting - a4xx: only disable depth clipping, not all clipping, when requested - nv50/ir: make sure cfg iterator always hits all blocks - main: add missing EXTRA_END in OES_sample_variables get check - nouveau: always enable at least one RC - nv30: only bail on color/depth bpp mismatch when surfaces are swizzled - a4xx: make sure to actually clamp depth as requested - gk110/ir: fix quadop dall emission Jan Ziak (2): - egl/x11: avoid using freed memory if dri2 init fails - loader: fix memory leak in loader_dri3_open Jason Ekstrand (31): - nir/spirv: Don't multiply the push constant block size by 4 - anv: Add a stub for CmdCopyQueryPoolResults on Ivy Bridge - glsl/types: Fix function type comparison function - glsl/types: Use \_mesa_hash_data for hashing function types - genxml: Make gen6-7 blending look more like gen8 - anv/pipeline: Unify blend state setup between gen7 and gen8 - anv: Enable independentBlend on gen7 - anv: Add an align_down_npot_u32 helper - anv: Handle VK_WHOLE_SIZE properly for buffer views - i965/miptree: Enforce that height == 1 for 1-D array textures - i965/miptree: Set logical_depth0 == 6 for cube maps - nir: Add a nir_deref_foreach_leaf helper - nir/inline: Constant-initialize local variables in the callee if needed - anv/pipeline: Set up point coord enables - i965/miptree: Stop multiplying cube depth by 6 in HiZ calculations - i965/vec4: Make opt_vector_float reset at the top of each block - anv/blit2d: Add a format parameter to bind_dst and create_iview - anv/blit2d: Add support for RGB destinations - anv/clear: Make cmd_clear_image take an actual VkClearValue - anv/clear: Clear E5B9G9R9 images as R32_UINT - anv: Include the pipeline layout in the shader hash - isl: Allow multisampled array textures - anv/descriptor_set: memset anv_descriptor_set_layout - anv/pipeline: Fix bind maps for fragment output arrays - anv/allocator: Correctly set the number of buckets - anv/pipeline: Properly handle OOM during shader compilation - anv: Remove unused fields from anv_pipeline_bind_map - anv: Add pipeline_has_stage guards a few places - anv: Add a struct for storing a compiled shader - anv/pipeline: Add support for caching the push constant map - anv: Rework pipeline caching José Fonseca (2): - appveyor: Install pywin32 extensions. - appveyor: Force Visual Studio 2013 image. Kenneth Graunke (21): - genxml: Add CLIPMODE\_\* prefix to 3DSTATE_CLIP's "Clip Mode" enum values. - genxml: Add APIMODE_D3D missing enum values and improve consistency. - anv: Fix near plane clipping on Gen7/7.5. - anv: Enable early culling on Gen7. - anv: Unify 3DSTATE_CLIP code across generations. - genxml: Rename "API Rendering Disable" to "Rendering Disable". - anv: Properly call gen75_emit_state_base_address on Haswell. - i965: Include VUE handles for GS with invocations > 1. - nir: Add a base const_index to shared atomic intrinsics. - i965: Fix shared atomic intrinsics to pay attention to base. - mesa: Add GL_BGRA_EXT to the list of GenerateMipmap internal formats. - mesa: Don't call GenerateMipmap if Width or Height == 0. - glsl: Delete bogus ir_set_program_inouts assert. - glsl: Fix the program resource names of gl_TessLevelOuter/Inner[]. - glsl: Fix location bias for patch variables. - glsl: Fix invariant matching in GLSL 4.30 and GLSL ES 1.00. - mesa: Fix uf10_to_f32() scale factor in the E == 0 and M != 0 case. - nir/builder: Add bany_inequal and bany helpers. - i965: Implement the WaPreventHSTessLevelsInterference workaround. - i965: Fix execution size of scalar TCS barrier setup code. - i965: Fix barrier count shift in scalar TCS backend. Leo Liu (2): - st/omx/enc: check uninitialized list from task release - vl/dri3: fix a memory leak from front buffer Marek Olšák (7): - glsl_to_tgsi: don't use the negate modifier in integer ops after bitcast - radeonsi: add a workaround for a compute VGPR-usage LLVM bug - winsys/amdgpu: disallow DCC with mipmaps - gallium/util: fix align64 - radeonsi: only set dual source blending for MRT0 - radeonsi: fix VM faults due NULL internal const buffers on CIK - radeonsi: disable SDMA texture copying on Carrizo Matt Turner (4): - mapi: Massage code to allow clang to compile. - i965/vec4: Ignore swizzle of VGRF for use by var_range_end(). - mesa: Use AC_HEADER_MAJOR to include correct header for major(). - nir: Walk blocks in source code order in lower_vars_to_ssa. Michel Dänzer (1): - glx: Don't use current context in \__glXSendError Miklós Máté (1): - vbo: set draw_id Nanley Chery (5): - anv/descriptor_set: Fix binding partly undefined descriptor sets - isl: Fix assert on raw buffer surface state size - anv/device: Fix max buffer range limits - isl: Fix isl_tiling_is_any_y() - anv/gen7_pipeline: Set PixelShaderKillPixel for discards Nicolai Hähnle (7): - radeonsi: explicitly choose center locations for 1xAA on Polaris - radeonsi: fix Polaris MSAA regression - radeonsi: ensure sample locations are set for line and polygon smoothing - st_glsl_to_tgsi: only skip over slots of an input array that are present - glsl: fix optimization of discard nested multiple levels - radeonsi: flush TC L2 cache for indirect draw data - radeonsi: add si_set_rw_buffer to be used for internal descriptors Nicolas Boichat (6): - egl/dri2: dri2_make_current: Set EGL error if bindContext fails - egl/wayland: Set disp->DriverData to NULL on error - egl/surfaceless: Set disp->DriverData to NULL on error - egl/drm: Set disp->DriverData to NULL on error - egl/android: Set dpy->DriverData to NULL on error - egl/dri2: Add reference count for dri2_egl_display Rob Herring (3): - Android: add missing u_math.h include path for libmesa_isl - vc4: fix vc4_resource_from_handle() stride calculation - vc4: add hash table look-up for exported dmabufs Samuel Pitoiset (7): - nvc0/ir: fix images indirect access on Fermi - nvc0: fix the driver cb size when draw parameters are used - gm107/ir: add missing NEG modifier for IADD32I - gm107/ir: make use of ADD32I for all immediates - nvc0: upload sample locations on GM20x - nvc0: invalidate textures/samplers on GK104+ - nv50/ir: always emit the NDV bit for OP_QUADOP Stefan Dirsch (1): - Avoid overflow in 'last' variable of FindGLXFunction(...) Stencel, Joanna (1): - egl/wayland-egl: Fix for segfault in dri2_wl_destroy_surface. Tim Rowley (2): - Revert "gallium: Force blend color to 16-byte alignment" - swr: switch from overriding -march to selecting features Tomasz Figa (8): - gallium/dri: Add shared glapi to LIBADD on Android - egl/android: Remove unused variables - egl/android: Check return value of dri2_get_dri_config() - egl/android: Stop leaking DRI images - gallium/winsys/kms: Fix double refcount when importing from prime FD (v2) - gallium/winsys/kms: Fully initialize kms_sw_dt at prime import time (v2) - gallium/winsys/kms: Move display target handle lookup to separate function - gallium/winsys/kms: Look up the GEM handle after importing a prime FD