mesa: Changes to 'ubuntu'
debian/changelog | 6 +++
debian/patches/118-remove-assertion.diff | 53 +++++++++++++++++++++++++++++++
debian/patches/series | 1
3 files changed, 60 insertions(+)
New commits:
commit 6c81233f1c5d6f54ba9c27d8377e473ec06e8cc6
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date: Mon Aug 27 21:14:56 2012 +0300
Added 118-remove-assertion.diff from upstream (LP: #1042293).
diff --git a/debian/changelog b/debian/changelog
index f8567a2..9c4c89e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+mesa (9.0~git20120821.c1114c61-0ubuntu2) quantal; urgency=low
+
+ * Added 118-remove-assertion.diff from upstream (LP: #1042293).
+
+ -- Timo Aaltonen <tjaalton@ubuntu.com> Mon, 27 Aug 2012 21:12:44 +0300
+
mesa (9.0~git20120821.c1114c61-0ubuntu1) quantal; urgency=low
* Merge from unreleased debian git.
diff --git a/debian/patches/118-remove-assertion.diff b/debian/patches/118-remove-assertion.diff
new file mode 100644
index 0000000..14feeed
--- /dev/null
+++ b/debian/patches/118-remove-assertion.diff
@@ -0,0 +1,53 @@
+commit 4b8b6f385e855ecb6da0b7dea56e70e69d1517b9
+Author: Paul Berry <stereotype441@gmail.com>
+Date: Wed Aug 22 08:01:58 2012 -0700
+
+ i965/HiZ: remove assertion from intel_resolve_map_set().
+
+ There are three possible resolve map states for each (level, layer) of
+ a depth miptree: "needs HiZ resolve", "needs depth resolve", and
+ "needs neither". When HiZ was first implemented on i965, any attempt
+ to directly transition between "needs HiZ resolve" and "needs depth
+ resolve" without passing through the "needs neither" state would have
+ been a bug indicating that a necessary resolve hadn't been performed.
+ Accordingly, intel_resolve_map_set() contained an assertion to verify
+ that no such direct transition happened.
+
+ However, now that we support fast depth clears, there is a valid
+ transition from the "needs HiZ resolve" to the "needs depth resolve"
+ state. When doing a fast depth clear, the old state of the buffer is
+ irrelevant, since we are completely replacing it with the clear value,
+ so it is not necessary to do any resolves before clearing--we can
+ transition, if necessary, directly from the "needs HiZ resolve" state
+ to the "needs depth resolve" state.
+
+ To avoid spurious assertions in this valid case, this patch just
+ removes the assertion.
+
+ Reviewed-by: Eric Anholt <eric@anholt.net>
+ Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
+
+diff --git a/src/mesa/drivers/dri/intel/intel_resolve_map.c b/src/mesa/drivers/dri/intel/intel_resolve_map.c
+index 471988d..04b5c94 100644
+--- a/src/mesa/drivers/dri/intel/intel_resolve_map.c
++++ b/src/mesa/drivers/dri/intel/intel_resolve_map.c
+@@ -29,8 +29,8 @@
+ /**
+ * \brief Set that the miptree slice at (level, layer) needs a resolve.
+ *
+- * \pre If a map element already exists with the given key, then
+- * the new and existing element value must be identical.
++ * If a map element already exists with the given key, then the value is
++ * changed to the given value of \c need.
+ */
+ void
+ intel_resolve_map_set(struct intel_resolve_map *head,
+@@ -43,7 +43,7 @@ intel_resolve_map_set(struct intel_resolve_map *head,
+
+ while (*tail) {
+ if ((*tail)->level == level && (*tail)->layer == layer) {
+- assert((*tail)->need == need);
++ (*tail)->need = need;
+ return;
+ }
+ prev = *tail;
diff --git a/debian/patches/series b/debian/patches/series
index 1d3510c..478b752 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -13,3 +13,4 @@
100_no_abi_tag.patch
101_ubuntu_hidden_glname.patch
#117-static-gallium.patch
+118-remove-assertion.diff
Reply to: