[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

mesa: Changes to 'upstream-unstable'



Rebased ref, commits from common ancestor:
commit 0048df9cd0931ff936c5dfc60f0d821637049c69
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 18 17:13:06 2013 -0700

    docs: Add md5sums for the 9.2.2 release
    
    Which we could only do after creating the tar files, of course.

diff --git a/docs/relnotes/9.2.2.html b/docs/relnotes/9.2.2.html
index c2666a4..8be3d2c 100644
--- a/docs/relnotes/9.2.2.html
+++ b/docs/relnotes/9.2.2.html
@@ -31,6 +31,9 @@ because GL_ARB_compatibility is not supported.
 
 <h2>MD5 checksums</h2>
 <pre>
+df801a975045150790e10e2ccf32193f  MesaLib-9.2.2.tar.gz
+20887f8020db7d1736a01ae9cd5d8c38  MesaLib-9.2.2.tar.bz2
+1676f4f1b157c838d077dadd31ba6c84  MesaLib-9.2.2.zip
 </pre>
 
 

commit 8f0742051e8501e737affb392996aef172034ca8
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 18 16:58:32 2013 -0700

    Add bin/test-driver to the list of files to be distributed.
    
    Without this, the build fails for me when trying to build from a generated tar
    file after running just ./configure. (It's not clear to me why I didn't
    encounter similar breakage with previous releases.)

diff --git a/Makefile.am b/Makefile.am
index 2a57397..cdb70f6 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -50,6 +50,7 @@ EXTRA_FILES = \
 	bin/install-sh					\
 	bin/ltmain.sh					\
 	bin/missing					\
+	bin/test-driver					\
 	bin/ylwrap					\
 	src/glsl/glsl_parser.cpp			\
 	src/glsl/glsl_parser.h				\

commit 8eb104699605e1da700cd18ce526fe8afd60103e
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 18 16:41:15 2013 -0700

    docs: Add release notes for 9.2.2 release
    
    With the list of bugs fixed and a full list of changes.

diff --git a/docs/relnotes/9.2.2.html b/docs/relnotes/9.2.2.html
new file mode 100644
index 0000000..c2666a4
--- /dev/null
+++ b/docs/relnotes/9.2.2.html
@@ -0,0 +1,97 @@
+<!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 9.2.2 Release Notes / (October 18, 2013)</h1>
+
+<p>
+Mesa 9.2.2 is a bug fix release which fixes bugs found since the 9.2.1 release.
+</p>
+<p>
+Mesa 9.2 implements the OpenGL 3.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 3.1.  OpenGL
+3.1 is <strong>only</strong> available if requested at context creation
+because GL_ARB_compatibility is not supported.
+</p>
+
+
+<h2>MD5 checksums</h2>
+<pre>
+</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=69449";>Bug 69449</a> - Valgrind error in program_resource_visitor::recursion</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=70411";>Bug 70411</a> - glInvalidateFramebuffer fails with GL_INVALID_ENUM</li>
+
+</ul>
+
+<h2>Changes</h2>
+
+<p>The full set of changes can be viewed by using the following GIT command:</p>
+
+<pre>
+  git log mesa-9.2.1..mesa-9.2.2
+</pre>
+
+<p>Brian Paul (3):</p>
+<ul>
+  <li>docs: add missing &lt;pre&gt; tag</li>
+  <li>svga: fix incorrect memcpy src in svga_buffer_upload_piecewise()</li>
+  <li>mesa: consolidate cube width=height error checking</li>
+</ul>
+
+<p>Carl Worth (3):</p>
+<ul>
+  <li>docs: Add md5sums for 9.2.1 release</li>
+  <li>Bump version to 9.2.2</li>
+</ul>
+
+<p>Constantin Baranov (1):</p>
+<ul>
+  <li>mesa: Add missing switch break in invalidate_framebuffer_storage()</li>
+</ul>
+
+<p>Eric Anholt (3):</p>
+<ul>
+  <li>i965: Don't forget the cube map padding on gen5+.</li>
+  <li>mesa: Fix compiler warnings when ALIGN's alignment is "1 &lt;&lt; value".</li>
+  <li>i965: Fix 3D texture layout by more literally copying from the spec.</li>
+</ul>
+
+<p>Francisco Jerez (1):</p>
+<ul>
+  <li>glsl: Fix usage of the wrong union member in program_resource_visitor::recursion.</li>
+</ul>
+
+<p>Tom Stellard (1):</p>
+<ul>
+  <li>radeonsi: Use 'SI' as the LLVM processor for CIK on LLVM &lt;= 3.3</li>
+</ul>
+
+</div>
+</body>
+</html>

commit cc6ad9ce2c7535a942fc3b6cfa56976f99c5f2fd
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 18 16:36:31 2013 -0700

    Bump version to 9.2.2
    
    In preparation for the 9.2.2 release, of course.

diff --git a/Android.common.mk b/Android.common.mk
index ba0e46b..caf88b3 100644
--- a/Android.common.mk
+++ b/Android.common.mk
@@ -35,7 +35,7 @@ LOCAL_C_INCLUDES += \
 
 # define ANDROID_VERSION (e.g., 4.0.x => 0x0400)
 LOCAL_CFLAGS += \
-	-DPACKAGE_VERSION=\"9.2.1\" \
+	-DPACKAGE_VERSION=\"9.2.2\" \
 	-DPACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"; \
 	-DANDROID_VERSION=0x0$(MESA_ANDROID_MAJOR_VERSION)0$(MESA_ANDROID_MINOR_VERSION)
 
diff --git a/SConstruct b/SConstruct
index 2e09d70..fcd97f3 100644
--- a/SConstruct
+++ b/SConstruct
@@ -70,7 +70,7 @@ if env['gles']:
 # Environment setup
 
 env.Append(CPPDEFINES = [
-    ('PACKAGE_VERSION', '\\"9.2.1\\"'),
+    ('PACKAGE_VERSION', '\\"9.2.2\\"'),
     ('PACKAGE_BUGREPORT', '\\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\\";'),
 ])
 
diff --git a/configure.ac b/configure.ac
index 1384224..f701ccc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6,7 +6,7 @@ dnl Tell the user about autoconf.html in the --help output
 m4_divert_once([HELP_END], [
 See docs/autoconf.html for more details on the options for Mesa.])
 
-AC_INIT([Mesa], [9.2.1],
+AC_INIT([Mesa], [9.2.2],
     [https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa])
 AC_CONFIG_AUX_DIR([bin])
 AC_CONFIG_MACRO_DIR([m4])

commit 82d5b5e20ff8ad58f4d4eb4a94ba5fe9b4cb52be
Author: Carl Worth <cworth@cworth.org>
Date:   Thu Oct 17 11:30:26 2013 -0700

    Revert "glx: Generate fewer errors in MakeContextCurrent"
    
    This reverts commit fb3e55f898e047ed32008e8a579146090cc8f805.
    
    This commit was identified as causing the piglit
    glx-create-context-current-no-framebuffer test to crash, (where, previously,
    it merely failed without crashing).

diff --git a/src/glx/glxcurrent.c b/src/glx/glxcurrent.c
index a6884cf..3d8893c 100644
--- a/src/glx/glxcurrent.c
+++ b/src/glx/glxcurrent.c
@@ -231,6 +231,16 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
       return GL_FALSE;
    }
 
+   if (gc == NULL && (draw != None || read != None)) {
+      __glXGenerateError(dpy, (draw != None) ? draw : read,
+                         BadMatch, X_GLXMakeContextCurrent);
+      return False;
+   }
+   if (gc != NULL && (draw == None || read == None)) {
+      __glXGenerateError(dpy, None, BadMatch, X_GLXMakeContextCurrent);
+      return False;
+   }
+
    _glapi_check_multithread();
 
    __glXLock();

commit bf9be81b47270dd7ee42b5fe7e8fcf37a7238bee
Author: Tom Stellard <thomas.stellard@amd.com>
Date:   Thu Oct 3 07:56:35 2013 -0700

    radeonsi: Use 'SI' as the LLVM processor for CIK on LLVM <= 3.3
    
    LLVM 3.3 does not know about CIK processors, and the codes paths for SI
    and CIK are the same.
    
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>
    Cc: "9.2" <mesa-stable@lists.freedesktop.org>
    (cherry picked from commit 9da4021626dd48a1cc25054d1d4009e098f4d97b)

diff --git a/src/gallium/drivers/radeonsi/radeonsi_pipe.c b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
index 69b9ca9..46a2022 100644
--- a/src/gallium/drivers/radeonsi/radeonsi_pipe.c
+++ b/src/gallium/drivers/radeonsi/radeonsi_pipe.c
@@ -298,11 +298,15 @@ const char *r600_get_llvm_processor_name(enum radeon_family family)
 		case CHIP_PITCAIRN: return "pitcairn";
 		case CHIP_VERDE: return "verde";
 		case CHIP_OLAND: return "oland";
+#if HAVE_LLVM <= 0x0303
+		default: return "SI";
+#else
 		case CHIP_HAINAN: return "hainan";
 		case CHIP_BONAIRE: return "bonaire";
 		case CHIP_KABINI: return "kabini";
 		case CHIP_KAVERI: return "kaveri";
 		default: return "";
+#endif
 	}
 }
 

commit 995dc3782b4b7d04db1c0191b8d97df1e5c8f9dd
Author: Brian Paul <brianp@vmware.com>
Date:   Mon Oct 14 10:26:41 2013 -0600

    mesa: consolidate cube width=height error checking
    
    Instead of checking width==height in four places, just do it in
    _mesa_legal_texture_dimensions() where we do the other width, height,
    depth checks.  Similarly, move the check that cube map array depth is
    a multiple of 6.
    
    This change also fixes some missing cube dimension checks for the
    glTexStorage[23]D() functions.
    
    Remove width==height assertion in _mesa_get_tex_max_num_levels() since
    that's called before the other size checks for glTexStorage.
    
    Cc: "9.2" <mesa-stable@lists.freedesktop.org>
    (cherry picked from commit fa9c702164768f6ef05bdb02deff2f49a8d166de)

diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index b719fc8..d2acb5b 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -1105,7 +1105,6 @@ _mesa_get_tex_max_num_levels(GLenum target, GLsizei width, GLsizei height,
    case GL_TEXTURE_CUBE_MAP_ARRAY:
    case GL_PROXY_TEXTURE_CUBE_MAP:
    case GL_PROXY_TEXTURE_CUBE_MAP_ARRAY:
-      ASSERT(width == height);
       size = width;
       break;
    case GL_TEXTURE_2D:
@@ -1440,6 +1439,8 @@ _mesa_legal_texture_dimensions(struct gl_context *ctx, GLenum target,
    case GL_PROXY_TEXTURE_CUBE_MAP_ARB:
       maxSize = 1 << (ctx->Const.MaxCubeTextureLevels - 1);
       maxSize >>= level;
+      if (width != height)
+         return GL_FALSE;
       if (width < 2 * border || width > 2 * border + maxSize)
          return GL_FALSE;
       if (height < 2 * border || height > 2 * border + maxSize)
@@ -1493,7 +1494,9 @@ _mesa_legal_texture_dimensions(struct gl_context *ctx, GLenum target,
          return GL_FALSE;
       if (height < 2 * border || height > 2 * border + maxSize)
          return GL_FALSE;
-      if (depth < 1 || depth > ctx->Const.MaxArrayTextureLayers)
+      if (depth < 1 || depth > ctx->Const.MaxArrayTextureLayers || depth % 6)
+         return GL_FALSE;
+      if (width != height)
          return GL_FALSE;
       if (level >= ctx->Const.MaxCubeTextureLevels)
          return GL_FALSE;
@@ -1984,27 +1987,6 @@ texture_error_check( struct gl_context *ctx,
       }
    }
 
-   if ((target == GL_PROXY_TEXTURE_CUBE_MAP_ARB ||
-        _mesa_is_cube_face(target)) && width != height) {
-      _mesa_error(ctx, GL_INVALID_VALUE,
-                  "glTexImage2D(cube width != height)");
-      return GL_TRUE;
-   }
-
-   if ((target == GL_PROXY_TEXTURE_CUBE_MAP_ARRAY ||
-        target == GL_TEXTURE_CUBE_MAP_ARRAY) && width != height) {
-      _mesa_error(ctx, GL_INVALID_VALUE,
-                  "glTexImage3D(cube array width != height)");
-      return GL_TRUE;
-   }
-
-   if ((target == GL_PROXY_TEXTURE_CUBE_MAP_ARRAY ||
-        target == GL_TEXTURE_CUBE_MAP_ARRAY) && (depth % 6)) {
-      _mesa_error(ctx, GL_INVALID_VALUE,
-                  "glTexImage3D(cube array depth not multiple of 6)");
-      return GL_TRUE;
-   }
-
    /* Check internalFormat */
    if (_mesa_base_tex_format(ctx, internalFormat) < 0) {
       _mesa_error(ctx, GL_INVALID_VALUE,
@@ -2236,14 +2218,6 @@ compressed_texture_error_check(struct gl_context *ctx, GLint dimensions,
       goto error;
    }
 
-   /* For cube map, width must equal height */
-   if ((target == GL_PROXY_TEXTURE_CUBE_MAP_ARB ||
-        _mesa_is_cube_face(target)) && width != height) {
-      reason = "width != height";
-      error = GL_INVALID_VALUE;
-      goto error;
-   }
-
    /* check image size in bytes */
    if (expectedSize != imageSize) {
       /* Per GL_ARB_texture_compression:  GL_INVALID_VALUE is generated [...]
@@ -2589,13 +2563,6 @@ copytexture_error_check( struct gl_context *ctx, GLuint dimensions,
       }
    }
 
-   if ((target == GL_PROXY_TEXTURE_CUBE_MAP_ARB ||
-        _mesa_is_cube_face(target)) && width != height) {
-      _mesa_error(ctx, GL_INVALID_VALUE,
-                  "glTexImage2D(cube width != height)");
-      return GL_TRUE;
-   }
-
    if (_mesa_is_compressed_format(ctx, internalFormat)) {
       if (!target_can_be_compressed(ctx, target, internalFormat)) {
          _mesa_error(ctx, GL_INVALID_ENUM,

commit cd5ea2788d0fbef0cb60a80a32056e39ec3080e4
Author: Constantin Baranov <const@mimas.ru>
Date:   Sun Oct 13 01:17:15 2013 +0300

    mesa: Add missing switch break in invalidate_framebuffer_storage()
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70411
    Cc: "9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Brian Paul <brianp@vmware.com>
    (cherry picked from commit 53904c64da308bc5b5fd98c105fb86ec38cc33a3)

diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 53e2ab7..359518d 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -3581,6 +3581,7 @@ invalidate_framebuffer_storage(GLenum target, GLsizei numAttachments,
                            "%s(attachment >= max. color attachments)", name);
                return;
             }
+            break;
          }
          default:
             goto invalid_enum;

commit f1257f5fe0df035e796aa463f2970d78d582b273
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Oct 8 00:19:23 2013 -0700

    i965: Fix 3D texture layout by more literally copying from the spec.
    
    Fixes 3 texelFetch tests in piglit all.tests on ivb, and cubemap npot on gm45.
    
    v2: Don't forget the gen4 DL=6 cubemap behavior.
    
    Cc: "9.1 9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Chad Versace <chad.versace@linux.intel.com> (v1)
    (cherry picked from commit 8da15d75442c94adc1bc087fe164a1fa13c3c0f3)

diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c
index f695b15..1191c3c 100644
--- a/src/mesa/drivers/dri/i965/brw_tex_layout.c
+++ b/src/mesa/drivers/dri/i965/brw_tex_layout.c
@@ -248,69 +248,34 @@ static void
 brw_miptree_layout_texture_3d(struct brw_context *brw,
                               struct intel_mipmap_tree *mt)
 {
-   unsigned width  = mt->physical_width0;
-   unsigned height = mt->physical_height0;
-   unsigned depth = mt->physical_depth0;
-   unsigned pack_x_pitch, pack_x_nr;
-   unsigned pack_y_pitch;
+   unsigned yscale = mt->compressed ? 4 : 1;
 
+   mt->total_width = 0;
    mt->total_height = 0;
 
-   if (mt->compressed) {
-       mt->total_width = ALIGN(width, mt->align_w);
-       pack_y_pitch = (height + 3) / 4;
-   } else {
-      mt->total_width = mt->physical_width0;
-      pack_y_pitch = ALIGN(mt->physical_height0, mt->align_h);
-   }
-
-   pack_x_pitch = width;
-   pack_x_nr = 1;
-
+   unsigned ysum = 0;
    for (unsigned level = mt->first_level; level <= mt->last_level; level++) {
-      int x = 0;
-      int y = 0;
-
-      intel_miptree_set_level_info(mt, level,
-                                   0, mt->total_height,
-                                   width, height, depth);
-
-      for (int q = 0; q < depth; /* empty */) {
-         for (int j = 0; j < pack_x_nr && q < depth; j++, q++) {
-            intel_miptree_set_image_offset(mt, level, q, x, y);
-            x += pack_x_pitch;
-         }
-         if (x > mt->total_width)
-            mt->total_width = x;
-
-         x = 0;
-         y += pack_y_pitch;
-      }
+      unsigned WL = MAX2(mt->physical_width0 >> level, 1);
+      unsigned HL = MAX2(mt->physical_height0 >> level, 1);
+      unsigned DL = MAX2(mt->physical_depth0 >> level, 1);
+      unsigned wL = ALIGN(WL, mt->align_w);
+      unsigned hL = ALIGN(HL, mt->align_h);
 
-      mt->total_height += y;
-      width  = minify(width, 1);
-      height = minify(height, 1);
-      if (mt->target == GL_TEXTURE_3D)
-         depth = minify(depth, 1);
+      if (mt->target == GL_TEXTURE_CUBE_MAP)
+         DL = 6;
 
-      if (mt->compressed) {
-         pack_y_pitch = (height + 3) / 4;
+      intel_miptree_set_level_info(mt, level, 0, 0, WL, HL, DL);
 
-         if (pack_x_pitch > ALIGN(width, mt->align_w)) {
-            pack_x_pitch = ALIGN(width, mt->align_w);
-            pack_x_nr <<= 1;
-         }
-      } else {
-         pack_x_nr <<= 1;
-         if (pack_x_pitch > 4) {
-            pack_x_pitch >>= 1;
-         }
-
-         if (pack_y_pitch > 2) {
-            pack_y_pitch >>= 1;
-            pack_y_pitch = ALIGN(pack_y_pitch, mt->align_h);
-         }
+      for (unsigned q = 0; q < DL; q++) {
+         unsigned x = (q % (1 << level)) * wL;
+         unsigned y = ysum + (q >> level) * hL;
+
+         intel_miptree_set_image_offset(mt, level, q, x, y / yscale);
+         mt->total_width = MAX2(mt->total_width, x + wL);
+         mt->total_height = MAX2(mt->total_height, (y + hL) / yscale);
       }
+
+      ysum += ALIGN(DL, 1 << level) / (1 << level) * hL;
    }
 
    align_cube(mt);

commit cde1ff2d7cfc0a27e6bcea0df5a3d0c48ad1c89f
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Oct 8 00:23:29 2013 -0700

    mesa: Fix compiler warnings when ALIGN's alignment is "1 << value".
    
    We hadn't run into order of operation warnings before, apparently, since
    addition is so low on the order.
    
    Cc: "9.1 9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Brian Paul <brianp@vmware.com>
    Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    (cherry picked from commit bfe6e5dda5fcf65a3941ed4cca5eea755421979a)

diff --git a/src/mesa/main/macros.h b/src/mesa/main/macros.h
index ddfeee2..f6466e8 100644
--- a/src/mesa/main/macros.h
+++ b/src/mesa/main/macros.h
@@ -672,7 +672,7 @@ minify(unsigned value, unsigned levels)
  *
  * \sa ROUND_DOWN_TO()
  */
-#define ALIGN(value, alignment)  (((value) + alignment - 1) & ~(alignment - 1))
+#define ALIGN(value, alignment)  (((value) + (alignment) - 1) & ~((alignment) - 1))
 
 
 

commit eb69e251a8e6554555b921613eac222cae54ae4a
Author: Eric Anholt <eric@anholt.net>
Date:   Tue Oct 8 00:20:04 2013 -0700

    i965: Don't forget the cube map padding on gen5+.
    
    We had a fixup for gen4's 3d-layout cubemaps (which, iirc, we'd
    experimentally found to be necessary!), but while the spec still requires
    it on gen5, we'd been missing it in the array-layout cubemaps.
    
    Cc: "9.1 9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
    Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit 791550aa8e70dd5e0bdd5a996ef66b5964cf9095)

diff --git a/src/mesa/drivers/dri/i965/brw_tex_layout.c b/src/mesa/drivers/dri/i965/brw_tex_layout.c
index ebc67b1..f695b15 100644
--- a/src/mesa/drivers/dri/i965/brw_tex_layout.c
+++ b/src/mesa/drivers/dri/i965/brw_tex_layout.c
@@ -205,6 +205,18 @@ brw_miptree_layout_2d(struct intel_mipmap_tree *mt)
 }
 
 static void
+align_cube(struct intel_mipmap_tree *mt)
+{
+   /* The 965's sampler lays cachelines out according to how accesses
+    * in the texture surfaces run, so they may be "vertical" through
+    * memory.  As a result, the docs say in Surface Padding Requirements:
+    * Sampling Engine Surfaces that two extra rows of padding are required.
+    */
+   if (mt->target == GL_TEXTURE_CUBE_MAP)
+      mt->total_height += 2;
+}
+
+static void
 brw_miptree_layout_texture_array(struct brw_context *brw,
 				 struct intel_mipmap_tree *mt)
 {
@@ -228,6 +240,8 @@ brw_miptree_layout_texture_array(struct brw_context *brw,
       }
    }
    mt->total_height = qpitch * mt->physical_depth0;
+
+   align_cube(mt);
 }
 
 static void
@@ -299,13 +313,7 @@ brw_miptree_layout_texture_3d(struct brw_context *brw,
       }
    }
 
-   /* The 965's sampler lays cachelines out according to how accesses
-    * in the texture surfaces run, so they may be "vertical" through
-    * memory.  As a result, the docs say in Surface Padding Requirements:
-    * Sampling Engine Surfaces that two extra rows of padding are required.
-    */
-   if (mt->target == GL_TEXTURE_CUBE_MAP)
-      mt->total_height += 2;
+   align_cube(mt);
 }
 
 void

commit fb3e55f898e047ed32008e8a579146090cc8f805
Author: Adam Jackson <ajax@redhat.com>
Date:   Fri Oct 4 09:25:51 2013 -0400

    glx: Generate fewer errors in MakeContextCurrent
    
    For a few reasons.
    
    1: In the (current) common case, these conditionals are never true. All
    we're doing by checking them is slowing down MakeCurrent.  The server
    does these checks already anyway.
    
    2: GLX >= 3.0 contexts may legally be made current without a bound
    framebuffer.
    
    This does not fix piglit/glx-create-context-current-no-framebuffer, but
    is a prerequisite for fixing it.
    
    Cc: "9.1 9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Brian Paul <brianp@vmware.com>
    Signed-off-by: Adam Jackson <ajax@redhat.com>
    (cherry picked from commit e166a58c43e92f10f03b32747bff44708096f898)

diff --git a/src/glx/glxcurrent.c b/src/glx/glxcurrent.c
index 3d8893c..a6884cf 100644
--- a/src/glx/glxcurrent.c
+++ b/src/glx/glxcurrent.c
@@ -231,16 +231,6 @@ MakeContextCurrent(Display * dpy, GLXDrawable draw,
       return GL_FALSE;
    }
 
-   if (gc == NULL && (draw != None || read != None)) {
-      __glXGenerateError(dpy, (draw != None) ? draw : read,
-                         BadMatch, X_GLXMakeContextCurrent);
-      return False;
-   }
-   if (gc != NULL && (draw == None || read == None)) {
-      __glXGenerateError(dpy, None, BadMatch, X_GLXMakeContextCurrent);
-      return False;
-   }
-
    _glapi_check_multithread();
 
    __glXLock();

commit 6d6d8fb0732605440e1e6bc318942785886d4e23
Author: Francisco Jerez <currojerez@riseup.net>
Date:   Fri Sep 20 18:36:08 2013 -0700

    glsl: Fix usage of the wrong union member in program_resource_visitor::recursion.
    
    In the array-of-struct case, recursion() takes the row_major flag for
    each iteration from 't->fields.structure[i]', but 't' is not a record
    type.  Inherit the array declaration row_major flag instead.
    
    This mistake was found by running piglit on valgrind.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69449
    Cc: "9.1 9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
    Tested-by: Kenneth Graunke <kenneth@whitecape.org>
    (cherry picked from commit b3c04362b44a4eceb38c938ceb387a9c04d06973)

diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp
index fa77157..6cec96e 100644
--- a/src/glsl/link_uniforms.cpp
+++ b/src/glsl/link_uniforms.cpp
@@ -140,8 +140,8 @@ program_resource_visitor::recursion(const glsl_type *t, char **name,
 	 /* Append the subscript to the current variable name */
 	 ralloc_asprintf_rewrite_tail(name, &new_length, "[%u]", i);
 
-         recursion(t->fields.array, name, new_length,
-                   t->fields.structure[i].row_major, record_type);
+         recursion(t->fields.array, name, new_length, row_major,
+                   record_type);
 
          /* Only the first leaf-field of the record gets called with the
           * record type pointer.

commit 9eae0c95f821b2eab722ff35c7d600f7b03d8479
Author: Brian Paul <brianp@vmware.com>
Date:   Thu Oct 3 11:51:14 2013 -0600

    svga: fix incorrect memcpy src in svga_buffer_upload_piecewise()
    
    As we march over the source buffer we're uploading in pieces, we
    need to memcpy from the current offset, not the start of the buffer.
    Fixes graphical corruption when drawing very large vertex buffers.
    
    Cc: "9.2" <mesa-stable@lists.freedesktop.org>
    Reviewed-by: Matthew McClure <mcclurem@vmware.com>
    (cherry picked from commit a50c5f8d24e860baa15dd75b44b9a20af60cebf8)

diff --git a/src/gallium/drivers/svga/svga_resource_buffer_upload.c b/src/gallium/drivers/svga/svga_resource_buffer_upload.c
index 55e6613..e6bbc00 100644
--- a/src/gallium/drivers/svga/svga_resource_buffer_upload.c
+++ b/src/gallium/drivers/svga/svga_resource_buffer_upload.c
@@ -502,7 +502,7 @@ svga_buffer_upload_piecewise(struct svga_screen *ss,
                                PIPE_TRANSFER_DISCARD_RANGE);
          assert(map);
          if (map) {
-            memcpy(map, sbuf->swbuf, size);
+            memcpy(map, (const char *) sbuf->swbuf + offset, size);
             sws->buffer_unmap(sws, hwbuf);
          }
 

commit fac3094fef8c58bc73173fafa524dae68d8cf5b2
Author: Brian Paul <brianp@vmware.com>
Date:   Sat Oct 5 14:18:48 2013 -0600

    docs: add missing <pre> tag

diff --git a/docs/relnotes/9.2.1.html b/docs/relnotes/9.2.1.html
index 6342fb4..f9909dd 100644
--- a/docs/relnotes/9.2.1.html
+++ b/docs/relnotes/9.2.1.html
@@ -30,6 +30,7 @@ because GL_ARB_compatibility is not supported.
 
 
 <h2>MD5 checksums</h2>
+<pre>
 e6cdfa84dfddd86e3d36ec7ff4b6478a  MesaLib-9.2.1.tar.gz
 dd4c82667d9c19c28a553b12eba3f8a0  MesaLib-9.2.1.tar.bz2
 d9af0f5607f7d275793d293057ca9ac6  MesaLib-9.2.1.zip

commit 8c4c3d01ee4555d59aed6ab253c4aab4e265ceb0
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 4 20:42:21 2013 -0700

    docs: Add md5sums for 9.2.1 release
    
    Which we could only do after creating the tar files, of course.

diff --git a/docs/relnotes/9.2.1.html b/docs/relnotes/9.2.1.html
index db08517..6342fb4 100644
--- a/docs/relnotes/9.2.1.html
+++ b/docs/relnotes/9.2.1.html
@@ -30,8 +30,9 @@ because GL_ARB_compatibility is not supported.
 
 
 <h2>MD5 checksums</h2>
-<pre>
-TBA
+e6cdfa84dfddd86e3d36ec7ff4b6478a  MesaLib-9.2.1.tar.gz
+dd4c82667d9c19c28a553b12eba3f8a0  MesaLib-9.2.1.tar.bz2
+d9af0f5607f7d275793d293057ca9ac6  MesaLib-9.2.1.zip
 </pre>
 
 

commit 2c3aa1b4eec1e32a67a556e49fec7884421fd864
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 4 17:01:00 2013 -0700

    docs: Add release notes for 9.2.1 release
    
    With the list of bugs fixed and a full list of changes.

diff --git a/docs/relnotes/9.2.1.html b/docs/relnotes/9.2.1.html
new file mode 100644
index 0000000..db08517
--- /dev/null
+++ b/docs/relnotes/9.2.1.html
@@ -0,0 +1,204 @@
+<!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 9.2.1 Release Notes / (October 4, 2013)</h1>
+
+<p>
+Mesa 9.2.1 is a bug fix release which fixes bugs found since the 9.2 release.
+</p>
+<p>
+Mesa 9.2 implements the OpenGL 3.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 3.1.  OpenGL
+3.1 is <strong>only</strong> available if requested at context creation
+because GL_ARB_compatibility is not supported.
+</p>
+
+
+<h2>MD5 checksums</h2>
+<pre>
+TBA
+</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=66779";>Bug 66779</a> - Use of uninitialized stack variable with brw_search_cache()</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68233";>Bug 68233</a> - Valgrind errors in mesa</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68250";>Bug 68250</a> - Automatic mipmap generation with texture compression produces borders that fade to black</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68637";>Bug 68637</a> - [Bisected IVB/HSW]Unigine demo crash</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=68753";>Bug 68753</a> - [regression bisected] GLSL ES: structs members can't have precision qualifiers anymore in 9.2</li>
+
+<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=69525";>Bug 69525</a> - [GM45, bisected] Piglit tex-shadow2drect fails</li>
+
+</ul>
+
+<h2>Changes</h2>
+
+<p>The full set of changes can be viewed by using the following GIT command:</p>
+
+<pre>
+  git log mesa-9.2..mesa-9.2.1
+</pre>
+
+
+<p>Alex Deucher (1):</p>
+<ul>
+  <li>radeon/winsys: pad IBs to a multiple of 8 DWs</li>
+</ul>
+
+<p>Andreas Boll (1):</p>
+<ul>
+  <li>os: First check for __GLIBC__ and then for PIPE_OS_BSD</li>
+</ul>
+
+<p>Anuj Phogat (1):</p>
+<ul>
+  <li>glsl: Allow precision qualifiers for sampler types</li>
+</ul>
+
+<p>Brian Paul (2):</p>
+<ul>
+  <li>docs: minor fixes for 9.2 release notes</li>
+  <li>mesa: check for bufSize &gt; 0 in _mesa_GetSynciv()</li>
+</ul>
+
+<p>Carl Worth (3):</p>
+<ul>
+  <li>cherry-ignore: Ignore a commit which appeared twice on master</li>
+  <li>Use -Bsymbolic when linking libEGL.so</li>
+  <li>mesa: Bump version to 9.2.1</li>
+</ul>
+
+<p>Chris Forbes (3):</p>
+<ul>
+  <li>i965/fs: Gen4: Zero out extra coordinates when using shadow compare</li>
+  <li>i965: Fix cube array coordinate normalization</li>
+  <li>i965: fix bogus swizzle in brw_cubemap_normalize</li>
+</ul>
+
+<p>Christoph Bumiller (2):</p>
+<ul>
+  <li>nvc0/ir: add f32 long immediate cannot saturate</li>
+  <li>nvc0: delete compute object on screen destruction</li>
+</ul>
+
+<p>Dave Airlie (1):</p>
+<ul>
+  <li>st/mesa: don't dereference stObj-&gt;pt if NULL</li>
+</ul>
+
+<p>Dominik Behr (1):</p>
+<ul>
+  <li>glsl: propagate max_array_access through function calls</li>
+</ul>
+
+<p>Emil Velikov (1):</p>
+<ul>
+  <li>nouveau: initialise the nouveau_transfer maps</li>
+</ul>
+
+<p>Eric Anholt (4):</p>
+<ul>
+  <li>mesa: Rip out more extension checking from texformat.c.</li>
+  <li>mesa: Don't choose S3TC for generic compression if we can't compress.</li>
+  <li>i965/gen4: Fix fragment program rectangle texture shadow compares.</li>
+  <li>i965: Reenable glBitmap() after the sRGB winsys enabling.</li>
+</ul>
+
+<p>Ian Romanick (7):</p>
+<ul>
+  <li>docs: Add 9.2 release md5sums</li>
+  <li>Add .cherry-ignore file</li>
+  <li>mesa: Note that 89a665e should not be picked</li>
+  <li>glsl: Reallow precision qualifiers on structure members</li>
+  <li>mesa: Support GL_MAX_VERTEX_OUTPUT_COMPONENTS query with ES3</li>
+  <li>mesa: Remove all traces of GL_OES_matrix_get</li>
+  <li>mesa: Don't return any data for GL_SHADER_BINARY_FORMATS</li>
+</ul>
+
+<p>Ilia Mirkin (2):</p>
+<ul>
+  <li>nv30: find first unused texcoord rather than bailing if first is used</li>
+  <li>nv30: fix inconsistent setting of push-&gt;user_priv</li>
+</ul>
+
+<p>Joakim Sindholt (1):</p>
+<ul>
+  <li>nvc0: fix blitctx memory leak</li>
+</ul>
+
+<p>Johannes Obermayr (1):</p>
+<ul>
+  <li>st/gbm: Add $(WAYLAND_CFLAGS) for HAVE_EGL_PLATFORM_WAYLAND.</li>
+</ul>
+
+<p>Kenneth Graunke (5):</p>
+<ul>
+  <li>i965/vs: Detect GRF sources in split_virtual_grfs send-from-GRF code.</li>
+  <li>i965/fs: Detect GRF sources in split_virtual_grfs send-from-GRF code.</li>
+  <li>i965/vec4: Only zero out unused message components when there are any.</li>
+  <li>i965: Fix brw_vs_prog_data_compare to actually check field members.</li>
+  <li>meta: Set correct viewport and projection in decompress_texture_image.</li>
+</ul>
+
+<p>Maarten Lankhorst (2):</p>
+<ul>
+  <li>st/dri: do not create a new context for msaa copy</li>
+  <li>nvc0: restore viewport after blit</li>
+</ul>
+
+<p>Marek Olšák (2):</p>
+<ul>
+  <li>r600g: fix constant buffer cache flushing</li>
+  <li>r600g: fix texture buffer object cache flushing</li>
+</ul>
+
+<p>Paul Berry (1):</p>
+<ul>
+  <li>i965: Initialize inout_offset parameter to brw_search_cache().</li>
+</ul>
+
+<p>Rico Schüller (1):</p>
+<ul>
+  <li>glx: Initialize OpenGL version to 1.0</li>
+</ul>
+
+<p>Tiziano Bacocco (1):</p>
+<ul>
+  <li>nvc0/ir: fix use after free in texture barrier insertion pass</li>
+</ul>
+
+<p>Torsten Duwe (1):</p>
+<ul>
+  <li>wayland-egl.pc requires wayland-client.pc.</li>
+</ul>
+
+</div>
+</body>
+</html>

commit 5377bc3e4086833ddf30b4e94c4d26b6fd946398
Author: Carl Worth <cworth@cworth.org>
Date:   Fri Oct 4 15:25:44 2013 -0700

    mesa: Bump version to 9.2.1
    
    In preparation for the 9.2.1 release, of course.

diff --git a/Android.common.mk b/Android.common.mk
index e6b3b44..ba0e46b 100644
--- a/Android.common.mk
+++ b/Android.common.mk
@@ -35,7 +35,7 @@ LOCAL_C_INCLUDES += \
 
 # define ANDROID_VERSION (e.g., 4.0.x => 0x0400)
 LOCAL_CFLAGS += \
-	-DPACKAGE_VERSION=\"9.2.0\" \
+	-DPACKAGE_VERSION=\"9.2.1\" \


Reply to: