1b8e80941Smrg<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2b8e80941Smrg<html lang="en"> 3b8e80941Smrg<head> 4b8e80941Smrg <meta http-equiv="content-type" content="text/html; charset=utf-8"> 5b8e80941Smrg <title>Mesa Release Notes</title> 6b8e80941Smrg <link rel="stylesheet" type="text/css" href="../mesa.css"> 7b8e80941Smrg</head> 8b8e80941Smrg<body> 9b8e80941Smrg 10b8e80941Smrg<div class="header"> 11b8e80941Smrg <h1>The Mesa 3D Graphics Library</h1> 12b8e80941Smrg</div> 13b8e80941Smrg 14b8e80941Smrg<iframe src="../contents.html"></iframe> 15b8e80941Smrg<div class="content"> 16b8e80941Smrg 17b8e80941Smrg<h1>Mesa 12.0.4 Release Notes / November 10, 2016</h1> 18b8e80941Smrg 19b8e80941Smrg<p> 20b8e80941SmrgMesa 12.0.4 is a bug fix release which fixes bugs found since the 12.0.4 release. 21b8e80941Smrg</p> 22b8e80941Smrg<p> 23b8e80941SmrgMesa 12.0.4 implements the OpenGL 4.3 API, but the version reported by 24b8e80941SmrgglGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / 25b8e80941SmrgglGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. 26b8e80941SmrgSome drivers don't support all the features required in OpenGL 4.3. OpenGL 27b8e80941Smrg4.3 is <strong>only</strong> available if requested at context creation 28b8e80941Smrgbecause compatibility contexts are not supported. 29b8e80941Smrg</p> 30b8e80941Smrg 31b8e80941Smrg 32b8e80941Smrg<h2>SHA256 checksums</h2> 33b8e80941Smrg<pre> 34b8e80941Smrg22026ce4f1c6a7908b0d10ff057decec0a5633afe7f38a0cef5c08d0689f02a6 mesa-12.0.4.tar.gz 35b8e80941Smrg5d6003da867d3f54e5000b4acdfc37e6cce5b6a4459274fdad73e24bd2f0065e mesa-12.0.4.tar.xz 36b8e80941Smrg</pre> 37b8e80941Smrg 38b8e80941Smrg 39b8e80941Smrg<h2>New features</h2> 40b8e80941Smrg<p>None</p> 41b8e80941Smrg 42b8e80941Smrg 43b8e80941Smrg<h2>Bug fixes</h2> 44b8e80941Smrg 45b8e80941Smrg<p>This list is likely incomplete.</p> 46b8e80941Smrg 47b8e80941Smrg<ul> 48b8e80941Smrg 49b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71759">Bug 71759</a> - Intel driver fails with "intel_do_flush_locked failed: No such file or directory" if buffer imported with EGL_NATIVE_PIXMAP_KHR</li> 50b8e80941Smrg 51b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94354">Bug 94354</a> - R9285 Unigine Valley perf regression since radeonsi: use re-Z</li> 52b8e80941Smrg 53b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=96770">Bug 96770</a> - include/GL/mesa_glinterop.h:62: error: redefinition of typedef ‘GLXContext’</li> 54b8e80941Smrg 55b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97231">Bug 97231</a> - GL_DEPTH_CLAMP doesn't clamp to the far plane</li> 56b8e80941Smrg 57b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97233">Bug 97233</a> - vkQuake VkSpecializationMapEntry related bug</li> 58b8e80941Smrg 59b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97260">Bug 97260</a> - R9 290 low performance in Linux 4.7</li> 60b8e80941Smrg 61b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97549">Bug 97549</a> - [SNB, BXT] up to 40% perf drop from "loader/dri3: Overhaul dri3_update_num_back" commit</li> 62b8e80941Smrg 63b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=97887">Bug 97887</a> - llvm segfault in janusvr -render vive</li> 64b8e80941Smrg 65b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=98025">Bug 98025</a> - [radeonsi] incorrect primitive restart index used</li> 66b8e80941Smrg 67b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=98134">Bug 98134</a> - dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.draw_buffers wants a different GL error code</li> 68b8e80941Smrg 69b8e80941Smrg<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=98326">Bug 98326</a> - [dEQP, EGL] pbuffer depth/stencil tests fail</li> 70b8e80941Smrg 71b8e80941Smrg</ul> 72b8e80941Smrg 73b8e80941Smrg 74b8e80941Smrg<h2>Changes</h2> 75b8e80941Smrg 76b8e80941Smrg<p>Axel Davy (4):</p> 77b8e80941Smrg<ul> 78b8e80941Smrg <li>gallium/util: Really allow aliasing of dst for u_box_union_*</li> 79b8e80941Smrg <li>st/nine: Fix the calculation of the number of vs inputs</li> 80b8e80941Smrg <li>st/nine: Fix mistake in Volume9 UnlockBox</li> 81b8e80941Smrg <li>st/nine: Fix locking CubeTexture surfaces.</li> 82b8e80941Smrg</ul> 83b8e80941Smrg 84b8e80941Smrg<p>Brendan King (1):</p> 85b8e80941Smrg<ul> 86b8e80941Smrg <li>configure.ac: fix the name of the Wayland Scanner pc file</li> 87b8e80941Smrg</ul> 88b8e80941Smrg 89b8e80941Smrg<p>Brian Paul (1):</p> 90b8e80941Smrg<ul> 91b8e80941Smrg <li>st/mesa: fix swizzle issue in st_create_sampler_view_from_stobj()</li> 92b8e80941Smrg</ul> 93b8e80941Smrg 94b8e80941Smrg<p>Chad Versace (3):</p> 95b8e80941Smrg<ul> 96b8e80941Smrg <li>egl: Fix truncation error in _eglParseSyncAttribList64</li> 97b8e80941Smrg <li>i965/sync: Fix uninitalized usage and leak of mutex</li> 98b8e80941Smrg <li>egl: Don't advertise unsupported platform extensions</li> 99b8e80941Smrg</ul> 100b8e80941Smrg 101b8e80941Smrg<p>Chuanbo Weng (1):</p> 102b8e80941Smrg<ul> 103b8e80941Smrg <li>gbm: fix potential NULL deref of mapImage/unmapImage.</li> 104b8e80941Smrg</ul> 105b8e80941Smrg 106b8e80941Smrg<p>Chuck Atkins (1):</p> 107b8e80941Smrg<ul> 108b8e80941Smrg <li>autoconf: Make header install distinct for various APIs (v2)</li> 109b8e80941Smrg</ul> 110b8e80941Smrg 111b8e80941Smrg<p>Dave Airlie (3):</p> 112b8e80941Smrg<ul> 113b8e80941Smrg <li>anv: initialise and increment send_sbc</li> 114b8e80941Smrg <li>anv/wsi: fix apps that acquire multiple images up front</li> 115b8e80941Smrg <li>Revert "st/vdpau: use linear layout for output surfaces"</li> 116b8e80941Smrg</ul> 117b8e80941Smrg 118b8e80941Smrg<p>Emil Velikov (12):</p> 119b8e80941Smrg<ul> 120b8e80941Smrg <li>docs: add sha256 checksums for 12.0.3</li> 121b8e80941Smrg <li>cherry-ignore: add non-applicable i965 commit</li> 122b8e80941Smrg <li>cherry-ignore: add vaapi encode fix</li> 123b8e80941Smrg <li>cherry-ignore: add EGL_KHR_debug fix</li> 124b8e80941Smrg <li>cherry-ignore: add update_renderbuffer_read_surfaces()</li> 125b8e80941Smrg <li>isl/gen6: correctly check msaa layout samples count</li> 126b8e80941Smrg <li>egl/x11: don't crash if dri2_dpy->conn is NULL</li> 127b8e80941Smrg <li>get-pick-list.sh: Require explicit "12.0" for nominating stable patches</li> 128b8e80941Smrg <li>automake: don't forget to pick wglext.h in the tarball</li> 129b8e80941Smrg <li>cherry-ignore: add N/A EGL revert</li> 130b8e80941Smrg <li>cherry-ignore: add ClientWaitSync fixes</li> 131b8e80941Smrg <li>Update version to 12.0.4</li> 132b8e80941Smrg</ul> 133b8e80941Smrg 134b8e80941Smrg<p>Eric Anholt (5):</p> 135b8e80941Smrg<ul> 136b8e80941Smrg <li>travis: Parse configure.ac to pick an updated LIBDRM_VERSION.</li> 137b8e80941Smrg <li>travis: Update to the Ubuntu Trusty image.</li> 138b8e80941Smrg <li>travis: Enable vc4 in libdrm to satisfy vc4 test build dependency.</li> 139b8e80941Smrg <li>travis: Upgrade LLVM dependency to 3.5 and enable LLVM drivers.</li> 140b8e80941Smrg <li>gallium: Fix install-gallium-links.mk on non-bash /bin/sh</li> 141b8e80941Smrg</ul> 142b8e80941Smrg 143b8e80941Smrg<p>Hans de Goede (1):</p> 144b8e80941Smrg<ul> 145b8e80941Smrg <li>pipe_loader_sw: Fix fd leak when instantiated via pipe_loader_sw_probe_kms</li> 146b8e80941Smrg</ul> 147b8e80941Smrg 148b8e80941Smrg<p>Ian Romanick (1):</p> 149b8e80941Smrg<ul> 150b8e80941Smrg <li>glsl: Fix cut-and-paste bug in hierarchical visitor ir_expression::accept</li> 151b8e80941Smrg</ul> 152b8e80941Smrg 153b8e80941Smrg<p>Ilia Mirkin (16):</p> 154b8e80941Smrg<ul> 155b8e80941Smrg <li>nv30: set usage to staging so that the buffer is allocated in GART</li> 156b8e80941Smrg <li>a3xx: make sure to actually clamp depth as requested</li> 157b8e80941Smrg <li>a3xx: make use of software clipping when hw can't handle it</li> 158b8e80941Smrg <li>a3xx: use window scissor to simulate viewport xy clip</li> 159b8e80941Smrg <li>main: GL_RGB10_A2UI does not come with GL 3.0/EXT_texture_integer</li> 160b8e80941Smrg <li>mesa/formatquery: limit ES target support, fix core context support</li> 161b8e80941Smrg <li>nir: fix definition of pack_uvec2_to_uint</li> 162b8e80941Smrg <li>gm107/ir: AL2P writes to a predicate register</li> 163b8e80941Smrg <li>st/mesa: fix is_scissor_enabled when X/Y are negative</li> 164b8e80941Smrg <li>nvc0/ir: fix overwriting of value backing non-constant gather offset</li> 165b8e80941Smrg <li>nv50/ir: copy over value's register id when resolving merge of a phi</li> 166b8e80941Smrg <li>nvc0/ir: fix textureGather with a single offset</li> 167b8e80941Smrg <li>gm107/ir: fix texturing with indirect samplers</li> 168b8e80941Smrg <li>gm107/ir: fix bit offset of tex lod setting for indirect texturing</li> 169b8e80941Smrg <li>nv50,nvc0: avoid reading out of bounds when getting bogus so info</li> 170b8e80941Smrg <li>nv50/ir: process texture offset sources as regular sources</li> 171b8e80941Smrg</ul> 172b8e80941Smrg 173b8e80941Smrg<p>James Legg (1):</p> 174b8e80941Smrg<ul> 175b8e80941Smrg <li>radeonsi: Fix primitive restart when index changes</li> 176b8e80941Smrg</ul> 177b8e80941Smrg 178b8e80941Smrg<p>Jason Ekstrand (9):</p> 179b8e80941Smrg<ul> 180b8e80941Smrg <li>nir/spirv: Swap the argument order for AtomicCompareExchange</li> 181b8e80941Smrg <li>nir/spirv: Use the correct sources for CompareExchange on images</li> 182b8e80941Smrg <li>nir/spirv: Break variable decoration handling into a helper</li> 183b8e80941Smrg <li>nir/spirv: Refactor variable deocration handling</li> 184b8e80941Smrg <li>nir/spirv/cfg: Handle switches whose break block is a loop continue</li> 185b8e80941Smrg <li>nir/spirv/cfg: Detect switch_break after loop_break/continue</li> 186b8e80941Smrg <li>nir: Add a nop intrinsic</li> 187b8e80941Smrg <li>nir/spirv/cfg: Use a nop intrinsic for tagging the ends of blocks</li> 188b8e80941Smrg <li>intel/blorp: Rework our usage of ralloc when compiling shaders</li> 189b8e80941Smrg</ul> 190b8e80941Smrg 191b8e80941Smrg<p>Jonathan Gray (3):</p> 192b8e80941Smrg<ul> 193b8e80941Smrg <li>genxml: add generated headers to EXTRA_DIST</li> 194b8e80941Smrg <li>mapi: automake: set VISIBILITY_CFLAGS for shared glapi</li> 195b8e80941Smrg <li>mesa: automake: include mesa_glinterop.h in distfile</li> 196b8e80941Smrg</ul> 197b8e80941Smrg 198b8e80941Smrg<p>Julien Isorce (1):</p> 199b8e80941Smrg<ul> 200b8e80941Smrg <li>st/va: also honors interlaced preference when providing a video format</li> 201b8e80941Smrg</ul> 202b8e80941Smrg 203b8e80941Smrg<p>Kenneth Graunke (8):</p> 204b8e80941Smrg<ul> 205b8e80941Smrg <li>nir: Call nir_metadata_preserve from nir_lower_alu_to_scalar().</li> 206b8e80941Smrg <li>mesa: Expose RESET_NOTIFICATION_STRATEGY with KHR_robustness.</li> 207b8e80941Smrg <li>i965: Fix missing _NEW_TRANSFORM in Gen8+ 3DSTATE_DS atom.</li> 208b8e80941Smrg <li>i965: Add missing BRW_NEW_VS_PROG_DATA to 3DSTATE_CLIP.</li> 209b8e80941Smrg <li>i965: Move BRW_NEW_FRAGMENT_PROGRAM from 3DSTATE_PS to PS_EXTRA.</li> 210b8e80941Smrg <li>i965: Add missing BRW_NEW_CS_PROG_DATA to compute constant atom.</li> 211b8e80941Smrg <li>i965: Add missing BRW_CS_PROG_DATA to CS work group surface atom.</li> 212b8e80941Smrg <li>i965: Fix gl_InvocationID in dual object GS where invocations == 1.</li> 213b8e80941Smrg</ul> 214b8e80941Smrg 215b8e80941Smrg<p>Marek Olšák (12):</p> 216b8e80941Smrg<ul> 217b8e80941Smrg <li>radeonsi: fix cubemaps viewed as 2D</li> 218b8e80941Smrg <li>radeonsi: take compute shader and dispatch indirect memory usage into account</li> 219b8e80941Smrg <li>radeonsi: fix FP64 UBO loads with indirect uniform block indexing</li> 220b8e80941Smrg <li>mesa: fix glGetFramebufferAttachmentParameteriv w/ on-demand FRONT_BACK alloc</li> 221b8e80941Smrg <li>radeonsi: fix interpolateAt opcodes for .zw components</li> 222b8e80941Smrg <li>radeonsi: fix texture border colors for compute shaders</li> 223b8e80941Smrg <li>radeonsi: disable ReZ</li> 224b8e80941Smrg <li>gallium/radeon: make sure the address of separate CMASK is aligned properly</li> 225b8e80941Smrg <li>winsys/amdgpu: fix radeon_surf::macro_tile_index for imported textures</li> 226b8e80941Smrg <li>egl: use util/macros.h</li> 227b8e80941Smrg <li>egl: make interop ABI visible again</li> 228b8e80941Smrg <li>glx: make interop ABI visible again</li> 229b8e80941Smrg</ul> 230b8e80941Smrg 231b8e80941Smrg<p>Mario Kleiner (1):</p> 232b8e80941Smrg<ul> 233b8e80941Smrg <li>glx: Perform check for valid fbconfig against proper X-Screen.</li> 234b8e80941Smrg</ul> 235b8e80941Smrg 236b8e80941Smrg<p>Martin Peres (2):</p> 237b8e80941Smrg<ul> 238b8e80941Smrg <li>loader/dri3: add get_dri_screen() to the vtable</li> 239b8e80941Smrg <li>loader/dri3: import prime buffers in the currently-bound screen</li> 240b8e80941Smrg</ul> 241b8e80941Smrg 242b8e80941Smrg<p>Matt Whitlock (5):</p> 243b8e80941Smrg<ul> 244b8e80941Smrg <li>egl/android: replace call to dup(2) with fcntl(F_DUPFD_CLOEXEC)</li> 245b8e80941Smrg <li>gallium/auxiliary: replace call to dup(2) with fcntl(F_DUPFD_CLOEXEC)</li> 246b8e80941Smrg <li>st/dri: replace calls to dup(2) with fcntl(F_DUPFD_CLOEXEC)</li> 247b8e80941Smrg <li>st/xa: replace call to dup(2) with fcntl(F_DUPFD_CLOEXEC)</li> 248b8e80941Smrg <li>gallium/winsys: replace calls to dup(2) with fcntl(F_DUPFD_CLOEXEC)</li> 249b8e80941Smrg</ul> 250b8e80941Smrg 251b8e80941Smrg<p>Max Staudt (1):</p> 252b8e80941Smrg<ul> 253b8e80941Smrg <li>r300g: Set R300_VAP_CNTL on RSxxx to avoid triangle flickering</li> 254b8e80941Smrg</ul> 255b8e80941Smrg 256b8e80941Smrg<p>Michel Dänzer (1):</p> 257b8e80941Smrg<ul> 258b8e80941Smrg <li>loader/dri3: Overhaul dri3_update_num_back</li> 259b8e80941Smrg</ul> 260b8e80941Smrg 261b8e80941Smrg<p>Nicholas Bishop (2):</p> 262b8e80941Smrg<ul> 263b8e80941Smrg <li>gbm: return appropriate error when queryImage() fails</li> 264b8e80941Smrg <li>st/dri: check pipe_screen->resource_get_handle() return value</li> 265b8e80941Smrg</ul> 266b8e80941Smrg 267b8e80941Smrg<p>Nicolai Hähnle (10):</p> 268b8e80941Smrg<ul> 269b8e80941Smrg <li>gallium/radeon: cleanup and fix branch emits</li> 270b8e80941Smrg <li>st/glsl_to_tgsi: disable on-the-fly peephole for 64-bit operations</li> 271b8e80941Smrg <li>st/glsl_to_tgsi: simplify translate_tex_offset</li> 272b8e80941Smrg <li>st/glsl_to_tgsi: fix textureGatherOffset with indirectly loaded offsets</li> 273b8e80941Smrg <li>st/mesa: fix vertex elements setup for doubles</li> 274b8e80941Smrg <li>radeonsi: fix indirect loads of 64 bit constants</li> 275b8e80941Smrg <li>st/glsl_to_tgsi: fix atomic counter addressing</li> 276b8e80941Smrg <li>st/glsl_to_tgsi: fix block copies of arrays of doubles</li> 277b8e80941Smrg <li>st/mesa: only set primitive_restart when the restart index is in range</li> 278b8e80941Smrg <li>radeonsi: fix 64-bit loads from LDS</li> 279b8e80941Smrg</ul> 280b8e80941Smrg 281b8e80941Smrg<p>Samuel Pitoiset (4):</p> 282b8e80941Smrg<ul> 283b8e80941Smrg <li>nvc0/ir: fix subops for IMAD</li> 284b8e80941Smrg <li>gk110/ir: fix wrong emission of OP_NOT</li> 285b8e80941Smrg <li>nvc0: use correct bufctx when invalidating CP textures</li> 286b8e80941Smrg <li>nvc0/ir: fix emission of IMAD with NEG modifiers</li> 287b8e80941Smrg</ul> 288b8e80941Smrg 289b8e80941Smrg<p>Stencel, Joanna (1):</p> 290b8e80941Smrg<ul> 291b8e80941Smrg <li>egl/wayland: add missing destroy_window callback</li> 292b8e80941Smrg</ul> 293b8e80941Smrg 294b8e80941Smrg<p>Tapani Pälli (5):</p> 295b8e80941Smrg<ul> 296b8e80941Smrg <li>egl: stop claiming support for pbuffer + msaa</li> 297b8e80941Smrg <li>egl/dri2: set max values for pbuffer width and height</li> 298b8e80941Smrg <li>egl: add check that eglCreateContext gets a valid config</li> 299b8e80941Smrg <li>mesa: fix error handling in DrawBuffers</li> 300b8e80941Smrg <li>egl: set preserved behavior for surface only if config supports it</li> 301b8e80941Smrg</ul> 302b8e80941Smrg 303b8e80941Smrg<p>Tim Rowley (1):</p> 304b8e80941Smrg<ul> 305b8e80941Smrg <li>configure.ac: add llvm inteljitevents component if enabled</li> 306b8e80941Smrg</ul> 307b8e80941Smrg 308b8e80941Smrg<p>Vedran Miletić (1):</p> 309b8e80941Smrg<ul> 310b8e80941Smrg <li>clover: Fix build against clang SVN >= r273191</li> 311b8e80941Smrg</ul> 312b8e80941Smrg 313b8e80941Smrg<p>Vinson Lee (1):</p> 314b8e80941Smrg<ul> 315b8e80941Smrg <li>Revert "mesa_glinterop: remove inclusion of GLX header"</li> 316b8e80941Smrg</ul> 317b8e80941Smrg 318b8e80941Smrg 319b8e80941Smrg</div> 320b8e80941Smrg</body> 321b8e80941Smrg</html> 322