<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Mesa Release Notes</title>
  <link rel="stylesheet" type="text/css" href="../mesa.css">
</head>
<body>

<div class="header">
  <h1>The Mesa 3D Graphics Library</h1>
</div>

<iframe src="../contents.html"></iframe>
<div class="content">

<h1>Mesa 11.0.3 Release Notes / October 10, 2015</h1>

<p>
Mesa 11.0.3 is a bug fix release which fixes bugs found since the 11.0.2 release.
</p>
<p>
Mesa 11.0.3 implements the OpenGL 4.1 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.1.  OpenGL
4.1 is <strong>only</strong> available if requested at context creation
because compatibility contexts are not supported.
</p>


<h2>SHA256 checksums</h2>
<pre>
c2210e3daecc10ed9fdcea500327652ed6effc2f47c4b9cee63fb08f560d7117  mesa-11.0.3.tar.gz
ab2992eece21adc23c398720ef8c6933cb69ea42e1b2611dc09d031e17e033d6  mesa-11.0.3.tar.xz
</pre>


<h2>New features</h2>
<p>None</p>

<h2>Bug fixes</h2>

<p>This list is likely incomplete.</p>

<ul>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=55552">Bug 55552</a> - Compile errors with --enable-mangling</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=71789">Bug 71789</a> - [r300g] Visuals not found in (default) depth = 24</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=91044">Bug 91044</a> - piglit spec/egl_khr_create_context/valid debug flag gles* fail</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=91342">Bug 91342</a> - Very dark textures on some objects in indoors environments in Postal 2</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=91596">Bug 91596</a> - EGL_KHR_gl_colorspace (v2) causes problem with Android-x86 GUI</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=91718">Bug 91718</a> - piglit.spec.arb_shader_image_load_store.invalid causes intermittent GPU HANG</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92072">Bug 92072</a> - Wine breakage since d082c5324 (st/mesa: don't call st_validate_state in BlitFramebuffer)</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=92265">Bug 92265</a> - Black windows in weston after update mesa to 11.0.2-1</li>

</ul>


<h2>Changes</h2>

<p>Brian Paul (1):</p>
<ul>
  <li>st/mesa: try PIPE_BIND_RENDER_TARGET when choosing float texture formats</li>
</ul>

<p>Daniel Scharrer (1):</p>
<ul>
  <li>mesa: Add abs input modifier to base for POW in ffvertex_prog</li>
</ul>

<p>Emil Velikov (3):</p>
<ul>
  <li>docs: add sha256 checksums for 11.0.2</li>
  <li>Revert "nouveau: make sure there's always room to emit a fence"</li>
  <li>Update version to 11.0.3</li>
</ul>

<p>Francisco Jerez (1):</p>
<ul>
  <li>i965/fs: Fix hang on IVB and VLV with image format mismatch.</li>
</ul>

<p>Ian Romanick (1):</p>
<ul>
  <li>meta: Handle array textures in scaled MSAA blits</li>
</ul>

<p>Ilia Mirkin (6):</p>
<ul>
  <li>nouveau: be more careful about freeing temporary transfer buffers</li>
  <li>nouveau: delay deleting buffer with unflushed fence</li>
  <li>nouveau: wait to unref the transfer's bo until it's no longer used</li>
  <li>nv30: pretend to have packed texture/surface formats</li>
  <li>nv30: always go through translate module on big-endian</li>
  <li>nouveau: make sure there's always room to emit a fence</li>
</ul>

<p>Jason Ekstrand (1):</p>
<ul>
  <li>mesa: Correctly handle GL_BGRA_EXT in ES3 format_and_type checks</li>
</ul>

<p>Kyle Brenneman (3):</p>
<ul>
  <li>glx: Fix build errors with --enable-mangling (v2)</li>
  <li>mapi: Make _glapi_get_stub work with "gl" or "mgl" prefix.</li>
  <li>glx: Don't hard-code the name "libGL.so.1" in driOpenDriver (v3)</li>
</ul>

<p>Leo Liu (1):</p>
<ul>
  <li>radeon/vce: fix vui time_scale zero error</li>
</ul>

<p>Marek Olšák (21):</p>
<ul>
  <li>st/mesa: fix front buffer regression after dropping st_validate_state in Blit</li>
  <li>radeonsi: handle index buffer alloc failures</li>
  <li>radeonsi: handle constant buffer alloc failures</li>
  <li>gallium/radeon: handle buffer_map staging buffer failures better</li>
  <li>gallium/radeon: handle buffer alloc failures in r600_draw_rectangle</li>
  <li>gallium/radeon: add a fail path for depth MSAA texture readback</li>
  <li>radeonsi: report alloc failure from si_shader_binary_read</li>
  <li>radeonsi: add malloc fail paths to si_create_shader_state</li>
  <li>radeonsi: skip drawing if the tess factor ring allocation fails</li>
  <li>radeonsi: skip drawing if GS ring allocations fail</li>
  <li>radeonsi: handle shader precompile failures</li>
  <li>radeonsi: handle fixed-func TCS shader create failure</li>
  <li>radeonsi: skip drawing if VS, TCS, TES, GS fail to compile or upload</li>
  <li>radeonsi: skip drawing if PS fails to compile or upload</li>
  <li>radeonsi: skip drawing if updating the scratch buffer fails</li>
  <li>radeonsi: don't forget to update scratch relocations for LS, HS, ES shaders</li>
  <li>radeonsi: handle dummy constant buffer allocation failure</li>
  <li>gallium/u_blitter: handle allocation failures</li>
  <li>radeonsi: add scratch buffer to the buffer list when it's re-allocated</li>
  <li>st/dri: don't use _ctx in client_wait_sync</li>
  <li>egl/dri2: don't require a context for ClientWaitSync (v2)</li>
</ul>

<p>Matthew Waters (1):</p>
<ul>
  <li>egl: rework handling EGL_CONTEXT_FLAGS</li>
</ul>

<p>Michel Dänzer (1):</p>
<ul>
  <li>st/dri: Use packed RGB formats</li>
</ul>

<p>Roland Scheidegger (1):</p>
<ul>
  <li>mesa: fix mipmap generation for immutable, compressed textures</li>
</ul>

<p>Tom Stellard (3):</p>
<ul>
  <li>gallium/radeon: Use call_once() when initailizing LLVM targets</li>
  <li>gallivm: Allow drivers and state trackers to initialize gallivm LLVM targets v2</li>
  <li>radeon/llvm: Initialize gallivm targets when initializing the AMDGPU target v2</li>
</ul>

<p>Varad Gautam (1):</p>
<ul>
  <li>egl: restore surface type before linking config to its display</li>
</ul>

<p>Ville Syrjälä (3):</p>
<ul>
  <li>i830: Fix collision between I830_UPLOAD_RASTER_RULES and I830_UPLOAD_TEX(0)</li>
  <li>i915: Fix texcoord vs. varying collision in fragment programs</li>
  <li>i915: Remember to call intel_prepare_render() before blitting</li>
</ul>


</div>
</body>
</html>
