Mesa 17.3.7 Release Notes / March 21, 2018
==========================================

Mesa 17.3.7 is a bug fix release which fixes bugs found since the 17.3.7
release.

Mesa 17.3.7 implements the OpenGL 4.5 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.5. OpenGL 4.5 is **only** available if requested at context creation
because compatibility contexts are not supported.

SHA256 checksums
----------------

::

   f08de6d0ccb3dbca04b44790d85c3ff9e7b1cc4189d1b7c7167e5ba7d98736c0  mesa-17.3.7.tar.gz
   0595904a8fba65a8fe853a84ad3c940205503b94af41e8ceed245fada777ac1e  mesa-17.3.7.tar.xz

New features
------------

None

Bug fixes
---------

-  `Bug 103007 <https://bugs.freedesktop.org/show_bug.cgi?id=103007>`__
   - [OpenGL CTS] [HSW]
   KHR-GL45.gpu_shader_fp64.fp64.max_uniform_components fails
-  `Bug 103988 <https://bugs.freedesktop.org/show_bug.cgi?id=103988>`__
   - Intermittent piglit failures with shader cache enabled
-  `Bug 104302 <https://bugs.freedesktop.org/show_bug.cgi?id=104302>`__
   - Wolfenstein 2 (2017) under wine graphical artifacting on RADV
-  `Bug 104381 <https://bugs.freedesktop.org/show_bug.cgi?id=104381>`__
   - swr fails to build since llvm-svn r321257
-  `Bug 104625 <https://bugs.freedesktop.org/show_bug.cgi?id=104625>`__
   - semicolon after if
-  `Bug 104642 <https://bugs.freedesktop.org/show_bug.cgi?id=104642>`__
   - Android: NULL pointer dereference with i965 mesa-dev, seems
   build_id_length related
-  `Bug 104654 <https://bugs.freedesktop.org/show_bug.cgi?id=104654>`__
   - r600/sb: Alien Isolation GPU lock
-  `Bug 104905 <https://bugs.freedesktop.org/show_bug.cgi?id=104905>`__
   - SpvOpFOrdEqual doesn't return correct results for NaNs
-  `Bug 104915 <https://bugs.freedesktop.org/show_bug.cgi?id=104915>`__
   - Indexed SHADING_LANGUAGE_VERSION query not supported
-  `Bug 104923 <https://bugs.freedesktop.org/show_bug.cgi?id=104923>`__
   - anv: Dota2 rendering corruption
-  `Bug 105013 <https://bugs.freedesktop.org/show_bug.cgi?id=105013>`__
   - [regression] GLX+VA-API+clutter-gst video playback is corrupt with
   Mesa 17.3 (but is fine with 17.2)
-  `Bug 105029 <https://bugs.freedesktop.org/show_bug.cgi?id=105029>`__
   - simdlib_512_avx512.inl:371:57: error: could not convert
   ‘_mm512_mask_blend_epi32((__mmask16)(ImmT), a, b)’ from ‘__m512i’
   {aka ‘__vector(8) long long int’} to ‘SIMDImpl::SIMD512Impl::Float’
-  `Bug 105098 <https://bugs.freedesktop.org/show_bug.cgi?id=105098>`__
   - [RADV] GPU freeze with simple Vulkan App
-  `Bug 105103 <https://bugs.freedesktop.org/show_bug.cgi?id=105103>`__
   - Wayland master causes Mesa to fail to compile
-  `Bug 105224 <https://bugs.freedesktop.org/show_bug.cgi?id=105224>`__
   - Webgl Pointclouds flickers
-  `Bug 105255 <https://bugs.freedesktop.org/show_bug.cgi?id=105255>`__
   - Waiting for fences without waitAll is not implemented
-  `Bug 105271 <https://bugs.freedesktop.org/show_bug.cgi?id=105271>`__
   - WebGL2 shader crashes i965_dri.so 17.3.3
-  `Bug 105436 <https://bugs.freedesktop.org/show_bug.cgi?id=105436>`__
   - Blinking textures in UT2004 [bisected]

Changes
-------

Alex Smith (1):

-  radv: Fix CmdCopyImage between uncompressed and compressed images

Andriy Khulap (1):

-  i965: Fix RELOC_WRITE typo in brw_store_data_imm64()

Anuj Phogat (1):

-  isl: Don't use surface format R32_FLOAT for typed atomic integer
   operations

Bas Nieuwenhuizen (6):

-  radv: Always lower indirect derefs after
   nir_lower_global_vars_to_local.
-  radeonsi: Export signalled sync file instead of -1.
-  radv: Implement WaitForFences with !waitAll.
-  radv: Implement waiting on non-submitted fences.
-  radv: Fix copying from 3D images starting at non-zero depth.
-  radv: Increase the number of dynamic uniform buffers.

Brian Paul (1):

-  mesa: add missing switch case for EXTRA_VERSION_40 in check_extra()

Chuck Atkins (1):

-  glx: Properly handle cases where screen creation fails

Daniel Stone (3):

-  i965: Fix bugs in intel_from_planar
-  egl/wayland: Fix ARGB/XRGB transposition in config map
-  egl/wayland: Always use in-tree wayland-egl-backend.h

Dave Airlie (9):

-  r600: fix cubemap arrays
-  r600/sb/cayman: fix indirect ubo access on cayman
-  r600: fix xfb stream check.
-  ac/nir: to integer the args to bcsel.
-  r600/cayman: fix fragcood loading recip generation.
-  radv: don't support tc-compat on multisample d32s8 at all.
-  virgl: remap query types to hw support.
-  ac/nir: don't apply slice rounding on txf_ms
-  r600: implement callstack workaround for evergreen.

Dylan Baker (2):

-  glapi/check_table: Remove 'extern "C"' block
-  glapi: remove APPLE extensions from test

Emil Velikov (1):

-  docs: add sha256 checksums for 17.3.6

Eric Anholt (4):

-  mesa: Drop incorrect A4B4G4R4 \_mesa_format_matches_format_and_type()
   cases.
-  ac/nir: Fix compiler warning about uninitialized dw_addr.
-  glsl/tests: Fix strict aliasing warning about int64/double.
-  glsl/tests: Fix a compiler warning about signed/unsigned loop
   comparison.

Francisco Jerez (1):

-  i965: Fix KHR_blend_equation_advanced with some render targets.

Frank Binns (1):

-  egl/dri2: fix segfault when display initialisation fails

George Kyriazis (1):

-  swr/rast: blend_epi32() should return Integer, not Float

Gert Wollny (1):

-  r600: Take ALU_EXTENDED into account when evaluating jump offsets

Gurchetan Singh (1):

-  mesa: don't clamp just based on ARB_viewport_array extension

Iago Toral Quiroga (2):

-  i965/sbe: fix number of inputs for active components
-  i965/vec4: use a temp register to compute offsets for pull loads

James Legg (1):

-  radv: Really use correct HTILE expanded words.

Jason Ekstrand (3):

-  intel/isl: Add an isl_color_value_is_zero helper
-  vulkan/wsi/x11: Set OUT_OF_DATE if wait_for_special_event fails
-  intel/fs: Set up sampler message headers in the visitor on gen7+

Jonathan Gray (1):

-  configure.ac: pthread-stubs not present on OpenBSD

Jordan Justen (3):

-  i965: Create new program cache bo when clearing the program cache
-  program: Don't reset SamplersValidated when restoring from shader
   cache
-  intel/vulkan: Hard code CS scratch_ids_per_subslice for Cherryview

Juan A. Suarez Romero (14):

-  cherry-ignore: Explicit 18.0 only nominations
-  cherry-ignore: r600/compute: only mark buffer/image state dirty for
   fragment shaders
-  cherry-ignore: anv: Move setting current_pipeline to cmd_state_init
-  cherry-ignore: anv: Be more careful about fast-clear colors
-  cherry-ignore: Add patches that has a specific version for 17.3
-  cherry-ignore: r600: Take ALU_EXTENDED into account when evaluating
   jump offsets
-  cherry-ignore: intel/compiler: Memory fence commit must always be
   enabled for gen10+
-  cherry-ignore: i965: Avoid problems from referencing orphaned BOs
   after growing.
-  cherry-ignore: include all Meson related fixes
-  cherry-ignore: ac/shader: fix vertex input with components.
-  cherry-ignore: i965: Use absolute addressing for constant buffer 0 on
   Kernel 4.16+.
-  cherry-ignore: anv/image: Separate modifiers from legacy scanout
-  cherry-ignore: glsl: Fix memory leak with known glsl_type instances
-  Update version to 17.3.7

Karol Herbst (1):

-  nvir/nvc0: fix legalizing of ld unlock c0[0x10000]

Kenneth Graunke (1):

-  i965: Emit CS stall before MEDIA_VFE_STATE.

Lionel Landwerlin (1):

-  i965: perf: ensure reading config IDs from sysfs isn't interrupted

Marek Olšák (2):

-  radeonsi: align command buffer starting address to fix some Raven
   hangs
-  configure.ac: blacklist libdrm 2.4.90

Michal Navratil (1):

-  winsys/amdgpu: allow non page-aligned size bo creation from pointer

Samuel Iglesias Gonsálvez (1):

-  glsl/linker: fix bug when checking precision qualifier

Samuel Pitoiset (2):

-  ac/nir: use ordered float comparisons except for not equal
-  Revert "mesa: do not trigger \_NEW_TEXTURE_STATE in
   glActiveTexture()"

Stephan Gerhold (1):

-  util/build-id: Fix address comparison for binaries with LOAD vaddr >
   0

Thomas Hellstrom (2):

-  svga: Fix a leftover debug hack
-  loader_dri3/glx/egl: Reinstate the loader_dri3_vtable get_dri_screen
   callback

Tim Rowley (1):

-  swr/rast: fix MemoryBuffer build break for llvm-6

Timothy Arceri (1):

-  nir: fix interger divide by zero crash during constant folding

Tobias Droste (1):

-  gallivm: Use new LLVM fast-math-flags API

Vadym Shovkoplias (1):

-  mesa: add glsl version query (v4)

Vinson Lee (1):

-  swr/rast: Fix macOS macro.
