1Mesa 12.0.2 Release Notes / September 2, 2016 2============================================= 3 4Mesa 12.0.2 is a bug fix release which fixes bugs found since the 12.0.1 5release. 6 7Mesa 12.0.2 implements the OpenGL 4.3 API, but the version reported by 8glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / 9glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being 10used. Some drivers don't support all the features required in OpenGL 114.3. OpenGL 4.3 is **only** available if requested at context creation 12because compatibility contexts are not supported. 13 14SHA256 checksums 15---------------- 16 17:: 18 19 a08565ab1273751ebe2ffa928cbf785056594c803077c9719d0763da780f2918 mesa-12.0.2.tar.gz 20 d957a5cc371dcd7ff2aa0d87492f263aece46f79352f4520039b58b1f32552cb mesa-12.0.2.tar.xz 21 22New features 23------------ 24 25None 26 27Bug fixes 28--------- 29 30This list is likely incomplete. 31 32- `Bug 69622 <https://bugs.freedesktop.org/show_bug.cgi?id=69622>`__ - 33 eglTerminate then eglMakeCurrent crahes 34- `Bug 89599 <https://bugs.freedesktop.org/show_bug.cgi?id=89599>`__ - 35 symbol 'x86_64_entry_start' is already defined when building with 36 LLVM/clang 37- `Bug 91342 <https://bugs.freedesktop.org/show_bug.cgi?id=91342>`__ - 38 Very dark textures on some objects in indoors environments in Postal 39 2 40- `Bug 92306 <https://bugs.freedesktop.org/show_bug.cgi?id=92306>`__ - 41 GL Excess demo renders incorrectly on nv43 42- `Bug 94148 <https://bugs.freedesktop.org/show_bug.cgi?id=94148>`__ - 43 Framebuffer considered invalid when a draw call is done before 44 glCheckFramebufferStatus 45- `Bug 96274 <https://bugs.freedesktop.org/show_bug.cgi?id=96274>`__ - 46 [NVC0] Failure when compiling compute shader: Assertion 47 \`bb->getFirst()->serial <= bb->getExit()->serial' failed 48- `Bug 96358 <https://bugs.freedesktop.org/show_bug.cgi?id=96358>`__ - 49 SSO: wrong interface validation between GS and VS (regresion due to 50 latest gles 3.1) 51- `Bug 96381 <https://bugs.freedesktop.org/show_bug.cgi?id=96381>`__ - 52 Texture artifacts with immutable texture storage and mipmaps 53- `Bug 96762 <https://bugs.freedesktop.org/show_bug.cgi?id=96762>`__ - 54 [radeonsi,apitrace] Firewatch: nothing rendered in scrollable (text) 55 areas 56- `Bug 96835 <https://bugs.freedesktop.org/show_bug.cgi?id=96835>`__ - 57 "gallium: Force blend color to 16-byte alignment" crash with 58 "-march=native -O3" causes some 32bit games to crash 59- `Bug 96850 <https://bugs.freedesktop.org/show_bug.cgi?id=96850>`__ - 60 Crucible tests fail for 32bit mesa 61- `Bug 96908 <https://bugs.freedesktop.org/show_bug.cgi?id=96908>`__ - 62 [radeonsi] MSAA causes graphical artifacts 63- `Bug 96911 <https://bugs.freedesktop.org/show_bug.cgi?id=96911>`__ - 64 webgl2 conformance2/textures/misc/tex-mipmap-levels.html crashes 12.1 65 Intel driver 66- `Bug 96971 <https://bugs.freedesktop.org/show_bug.cgi?id=96971>`__ - 67 invariant qualifier is not valid for shader inputs 68- `Bug 97039 <https://bugs.freedesktop.org/show_bug.cgi?id=97039>`__ - 69 The Talos Principle and Serious Sam 3 GPU faults 70- `Bug 97207 <https://bugs.freedesktop.org/show_bug.cgi?id=97207>`__ - 71 [IVY BRIDGE] Fragment shader discard writing to depth 72- `Bug 97214 <https://bugs.freedesktop.org/show_bug.cgi?id=97214>`__ - 73 X not running with error "Failed to make EGL context current" 74- `Bug 97225 <https://bugs.freedesktop.org/show_bug.cgi?id=97225>`__ - 75 [i965 on HD4600 Haswell] xcom switch to ingame cinematics cause 76 segmentation fault 77- `Bug 97231 <https://bugs.freedesktop.org/show_bug.cgi?id=97231>`__ - 78 GL_DEPTH_CLAMP doesn't clamp to the far plane 79- `Bug 97307 <https://bugs.freedesktop.org/show_bug.cgi?id=97307>`__ - 80 glsl/glcpp/tests/glcpp-test regression 81- `Bug 97331 <https://bugs.freedesktop.org/show_bug.cgi?id=97331>`__ - 82 glDrawElementsBaseVertex doesn't work in display list on i915 83- `Bug 97351 <https://bugs.freedesktop.org/show_bug.cgi?id=97351>`__ - 84 DrawElementsBaseVertex with VBO ignores base vertex on Intel GMA 9xx 85 in some cases 86- `Bug 97426 <https://bugs.freedesktop.org/show_bug.cgi?id=97426>`__ - 87 glScissor gives vertically inverted result 88- `Bug 97476 <https://bugs.freedesktop.org/show_bug.cgi?id=97476>`__ - 89 Shader binaries should not be stored in the PipelineCache 90- `Bug 97567 <https://bugs.freedesktop.org/show_bug.cgi?id=97567>`__ - 91 [SNB, ILK] ctl, piglit regressions in mesa 12.0.2rc1 92 93Changes 94------- 95 96Andreas Boll (1): 97 98- configure.ac: Use ${datarootdir} for --with-vulkan-icddir help string 99 too 100 101Bernard Kilarski (1): 102 103- glx: fix error code when there is no context bound 104 105Brian Paul (4): 106 107- svga: handle mismatched number of samplers, sampler views 108- mesa: use \_mesa_clear_texture_image() in clear_texture_fields() 109- swrast: fix incorrectly positioned putImage() in swrast driver 110- mesa: fix format conversion bug in get_tex_rgba_uncompressed() 111 112Chad Versace (2): 113 114- i965: Fix miptree layout for EGLImage-based renderbuffers 115- i965: Respect miptree offsets in intel_readpixels_tiled_memcpy() 116 117Christian König (1): 118 119- st/mesa: fix reference counting bug in st_vdpau 120 121Chuck Atkins (1): 122 123- swr: Refactor checks for compiler feature flags 124 125Daniel Scharrer (1): 126 127- mesa: Fix fixed function spot lighting on newer hardware (again) 128 129Dave Airlie (2): 130 131- anv: fix writemask on blit fragment shader. 132- st/glsl_to_tgsi: fix st_src_reg_for_double constant. 133 134Emil Velikov (15): 135 136- docs: add sha256 checksums for 12.0.1 137- mesa: automake: list builddir before srcdir 138- mesa: scons: list builddir before srcdir 139- i965: store reference to the context within struct brw_fence (v2) 140- anv: remove internal 'validate' layer 141- anv: automake: use VISIBILITY_CFLAGS to restrict symbol visibility 142- anv: automake: build with -Bsymbolic 143- anv: do not export the Vulkan API 144- anv: remove dummy VK_DEBUG_MARKER_EXT entry points 145- isl: automake: use VISIBILITY_CFLAGS to restrict symbol visibility 146- cherry-ignore: temporary(?) drop "a4xx: make sure to actually clamp 147 depth" 148- i915: Check return value of screen->image.loader->getBuffers 149- Revert "i965/miptree: Set logical_depth0 == 6 for cube maps" 150- glx/glvnd: list the strcmp arguments in correct order 151- Update version to 12.0.2 152 153Eric Anholt (4): 154 155- vc4: Close our screen's fd on screen close. 156- vc4: Disable early Z with computed depth. 157- vc4: Fix a leak of the src[] array of VPM reads in optimization. 158- vc4: Fix leak of the bo_handles table. 159 160Francisco Jerez (3): 161 162- i965: Emit SKL VF cache invalidation W/A from 163 brw_emit_pipe_control_flush. 164- i965: Make room in the batch epilogue for three more pipe controls. 165- i965: Fix remaining flush vs invalidate race conditions in 166 brw_emit_pipe_control_flush. 167 168Haixia Shi (1): 169 170- platform_android: prevent deadlock in droid_swap_buffers 171 172Ian Romanick (5): 173 174- mesa: Strip arrayness from interface block names in some IO 175 validation 176- glsl: Pack integer and double varyings as flat even if interpolation 177 mode is none 178- glcpp: Track the actual version instead of just the version_resolved 179 flag 180- glcpp: Only disallow #undef of pre-defined macros on GLSL ES >= 3.00 181 shaders 182- glsl: Mark cube map array sampler types as reserved in GLSL ES 3.10 183 184Ilia Mirkin (16): 185 186- mesa: etc2 online compression is unsupported, don't attempt it 187- st/mesa: return appropriate mesa format for ETC texture formats 188- mesa: set \_NEW_BUFFERS when updating texture bound to current 189 buffers 190- nv50,nvc0: srgb rendering is only available for rgba/bgra 191- vbo: allow DrawElementsBaseVertex in display lists 192- gallium/util: add helper to compute zmin/zmax for a viewport state 193- nv50,nvc0: fix depth range when halfz is enabled 194- nv50/ir: fix bb positions after exit instructions 195- vbo: add basevertex when looking up elements for vbo splitting 196- a4xx: only disable depth clipping, not all clipping, when requested 197- nv50/ir: make sure cfg iterator always hits all blocks 198- main: add missing EXTRA_END in OES_sample_variables get check 199- nouveau: always enable at least one RC 200- nv30: only bail on color/depth bpp mismatch when surfaces are 201 swizzled 202- a4xx: make sure to actually clamp depth as requested 203- gk110/ir: fix quadop dall emission 204 205Jan Ziak (2): 206 207- egl/x11: avoid using freed memory if dri2 init fails 208- loader: fix memory leak in loader_dri3_open 209 210Jason Ekstrand (31): 211 212- nir/spirv: Don't multiply the push constant block size by 4 213- anv: Add a stub for CmdCopyQueryPoolResults on Ivy Bridge 214- glsl/types: Fix function type comparison function 215- glsl/types: Use \_mesa_hash_data for hashing function types 216- genxml: Make gen6-7 blending look more like gen8 217- anv/pipeline: Unify blend state setup between gen7 and gen8 218- anv: Enable independentBlend on gen7 219- anv: Add an align_down_npot_u32 helper 220- anv: Handle VK_WHOLE_SIZE properly for buffer views 221- i965/miptree: Enforce that height == 1 for 1-D array textures 222- i965/miptree: Set logical_depth0 == 6 for cube maps 223- nir: Add a nir_deref_foreach_leaf helper 224- nir/inline: Constant-initialize local variables in the callee if 225 needed 226- anv/pipeline: Set up point coord enables 227- i965/miptree: Stop multiplying cube depth by 6 in HiZ calculations 228- i965/vec4: Make opt_vector_float reset at the top of each block 229- anv/blit2d: Add a format parameter to bind_dst and create_iview 230- anv/blit2d: Add support for RGB destinations 231- anv/clear: Make cmd_clear_image take an actual VkClearValue 232- anv/clear: Clear E5B9G9R9 images as R32_UINT 233- anv: Include the pipeline layout in the shader hash 234- isl: Allow multisampled array textures 235- anv/descriptor_set: memset anv_descriptor_set_layout 236- anv/pipeline: Fix bind maps for fragment output arrays 237- anv/allocator: Correctly set the number of buckets 238- anv/pipeline: Properly handle OOM during shader compilation 239- anv: Remove unused fields from anv_pipeline_bind_map 240- anv: Add pipeline_has_stage guards a few places 241- anv: Add a struct for storing a compiled shader 242- anv/pipeline: Add support for caching the push constant map 243- anv: Rework pipeline caching 244 245José Fonseca (2): 246 247- appveyor: Install pywin32 extensions. 248- appveyor: Force Visual Studio 2013 image. 249 250Kenneth Graunke (21): 251 252- genxml: Add CLIPMODE\_\* prefix to 3DSTATE_CLIP's "Clip Mode" enum 253 values. 254- genxml: Add APIMODE_D3D missing enum values and improve consistency. 255- anv: Fix near plane clipping on Gen7/7.5. 256- anv: Enable early culling on Gen7. 257- anv: Unify 3DSTATE_CLIP code across generations. 258- genxml: Rename "API Rendering Disable" to "Rendering Disable". 259- anv: Properly call gen75_emit_state_base_address on Haswell. 260- i965: Include VUE handles for GS with invocations > 1. 261- nir: Add a base const_index to shared atomic intrinsics. 262- i965: Fix shared atomic intrinsics to pay attention to base. 263- mesa: Add GL_BGRA_EXT to the list of GenerateMipmap internal formats. 264- mesa: Don't call GenerateMipmap if Width or Height == 0. 265- glsl: Delete bogus ir_set_program_inouts assert. 266- glsl: Fix the program resource names of gl_TessLevelOuter/Inner[]. 267- glsl: Fix location bias for patch variables. 268- glsl: Fix invariant matching in GLSL 4.30 and GLSL ES 1.00. 269- mesa: Fix uf10_to_f32() scale factor in the E == 0 and M != 0 case. 270- nir/builder: Add bany_inequal and bany helpers. 271- i965: Implement the WaPreventHSTessLevelsInterference workaround. 272- i965: Fix execution size of scalar TCS barrier setup code. 273- i965: Fix barrier count shift in scalar TCS backend. 274 275Leo Liu (2): 276 277- st/omx/enc: check uninitialized list from task release 278- vl/dri3: fix a memory leak from front buffer 279 280Marek Olšák (7): 281 282- glsl_to_tgsi: don't use the negate modifier in integer ops after 283 bitcast 284- radeonsi: add a workaround for a compute VGPR-usage LLVM bug 285- winsys/amdgpu: disallow DCC with mipmaps 286- gallium/util: fix align64 287- radeonsi: only set dual source blending for MRT0 288- radeonsi: fix VM faults due NULL internal const buffers on CIK 289- radeonsi: disable SDMA texture copying on Carrizo 290 291Matt Turner (4): 292 293- mapi: Massage code to allow clang to compile. 294- i965/vec4: Ignore swizzle of VGRF for use by var_range_end(). 295- mesa: Use AC_HEADER_MAJOR to include correct header for major(). 296- nir: Walk blocks in source code order in lower_vars_to_ssa. 297 298Michel Dänzer (1): 299 300- glx: Don't use current context in \__glXSendError 301 302Miklós Máté (1): 303 304- vbo: set draw_id 305 306Nanley Chery (5): 307 308- anv/descriptor_set: Fix binding partly undefined descriptor sets 309- isl: Fix assert on raw buffer surface state size 310- anv/device: Fix max buffer range limits 311- isl: Fix isl_tiling_is_any_y() 312- anv/gen7_pipeline: Set PixelShaderKillPixel for discards 313 314Nicolai Hähnle (7): 315 316- radeonsi: explicitly choose center locations for 1xAA on Polaris 317- radeonsi: fix Polaris MSAA regression 318- radeonsi: ensure sample locations are set for line and polygon 319 smoothing 320- st_glsl_to_tgsi: only skip over slots of an input array that are 321 present 322- glsl: fix optimization of discard nested multiple levels 323- radeonsi: flush TC L2 cache for indirect draw data 324- radeonsi: add si_set_rw_buffer to be used for internal descriptors 325 326Nicolas Boichat (6): 327 328- egl/dri2: dri2_make_current: Set EGL error if bindContext fails 329- egl/wayland: Set disp->DriverData to NULL on error 330- egl/surfaceless: Set disp->DriverData to NULL on error 331- egl/drm: Set disp->DriverData to NULL on error 332- egl/android: Set dpy->DriverData to NULL on error 333- egl/dri2: Add reference count for dri2_egl_display 334 335Rob Herring (3): 336 337- Android: add missing u_math.h include path for libmesa_isl 338- vc4: fix vc4_resource_from_handle() stride calculation 339- vc4: add hash table look-up for exported dmabufs 340 341Samuel Pitoiset (7): 342 343- nvc0/ir: fix images indirect access on Fermi 344- nvc0: fix the driver cb size when draw parameters are used 345- gm107/ir: add missing NEG modifier for IADD32I 346- gm107/ir: make use of ADD32I for all immediates 347- nvc0: upload sample locations on GM20x 348- nvc0: invalidate textures/samplers on GK104+ 349- nv50/ir: always emit the NDV bit for OP_QUADOP 350 351Stefan Dirsch (1): 352 353- Avoid overflow in 'last' variable of FindGLXFunction(...) 354 355Stencel, Joanna (1): 356 357- egl/wayland-egl: Fix for segfault in dri2_wl_destroy_surface. 358 359Tim Rowley (2): 360 361- Revert "gallium: Force blend color to 16-byte alignment" 362- swr: switch from overriding -march to selecting features 363 364Tomasz Figa (8): 365 366- gallium/dri: Add shared glapi to LIBADD on Android 367- egl/android: Remove unused variables 368- egl/android: Check return value of dri2_get_dri_config() 369- egl/android: Stop leaking DRI images 370- gallium/winsys/kms: Fix double refcount when importing from prime FD 371 (v2) 372- gallium/winsys/kms: Fully initialize kms_sw_dt at prime import time 373 (v2) 374- gallium/winsys/kms: Move display target handle lookup to separate 375 function 376- gallium/winsys/kms: Look up the GEM handle after importing a prime FD 377