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 &quot;intel_do_flush_locked failed: No such file or directory&quot; 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 &quot;loader/dri3: Overhaul dri3_update_num_back&quot; 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-&gt;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-&gt;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 &gt;= 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