mesa: Changes to 'ubuntu-oneiric'
debian/changelog |8 debian/patches/125_nv50_nvc0_use_screen_for_flush_notifier.patch | 221 ++ 2 files changed, 229 insertions(+) New commits: commit 30a4a84a8f8a8ff0c30df08add104fe6e443fcf1 Author: Bryce Harrington Date: Thu Jul 19 15:01:40 2012 -0700 Add 125_nv50_nvc0_use_screen_for_flush_notifier.patch diff --git a/debian/changelog b/debian/changelog index ed508bb..c9361a9 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +mesa (7.11-0ubuntu3.3) oneiric-proposed; urgency=low + + * Add 125_nv50_nvc0_use_screen_for_flush_notifier.patch to fix es2_info +crash. Backport from mesa 8.0. +(LP: #926918) + + -- Bryce Harrington Thu, 19 Jul 2012 13:37:06 -0700 + mesa (7.11-0ubuntu3.2) oneiric-proposed; urgency=low * Add patch series from upstream stable release to fix various issues: diff --git a/debian/patches/125_nv50_nvc0_use_screen_for_flush_notifier.patch b/debian/patches/125_nv50_nvc0_use_screen_for_flush_notifier.patch new file mode 100644 index 000..f02e75d --- /dev/null +++ b/debian/patches/125_nv50_nvc0_use_screen_for_flush_notifier.patch @@ -0,0 +1,221 @@ +commit 3069a7eaa5d83e7f41616347ba244c0dc0d944ae +Author: Christoph Bumiller +Date: Thu Jul 7 14:58:29 2011 +0200 + +nv50,nvc0: use screen instead of context for flush notifier + +Context may become NULL and we still have to be able to flush +pending fences. + +diff --git a/src/gallium/drivers/nv50/nv50_context.c b/src/gallium/drivers/nv50/nv50_context.c +index ceb83f6..ac3e361 100644 +--- a/src/gallium/drivers/nv50/nv50_context.c b/src/gallium/drivers/nv50/nv50_context.c +@@ -60,13 +60,13 @@ nv50_texture_barrier(struct pipe_context *pipe) + void + nv50_default_flush_notify(struct nouveau_channel *chan) + { +- struct nv50_context *nv50 = chan->user_private; ++ struct nv50_screen *screen = chan->user_private; + +- if (!nv50) ++ if (!screen) + return; + +- nouveau_fence_update(&nv50->screen->base, TRUE); +- nouveau_fence_next(&nv50->screen->base); ++ nouveau_fence_update(&screen->base, TRUE); ++ nouveau_fence_next(&screen->base); + } + + static void +@@ -100,10 +100,8 @@ nv50_destroy(struct pipe_context *pipe) + +draw_destroy(nv50->draw); + +- if (nv50->screen->cur_ctx == nv50) { +- nv50->screen->base.channel->user_private = NULL; ++ if (nv50->screen->cur_ctx == nv50) + nv50->screen->cur_ctx = NULL; +- } + +FREE(nv50); + } +@@ -140,7 +138,6 @@ nv50_create(struct pipe_screen *pscreen, void *priv) + +if (!screen->cur_ctx) + screen->cur_ctx = nv50; +- screen->base.channel->user_private = nv50; +screen->base.channel->flush_notify = nv50_default_flush_notify; + +nv50_init_query_functions(nv50); +diff --git a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c +index cc921d0..4cda303 100644 +--- a/src/gallium/drivers/nv50/nv50_screen.c b/src/gallium/drivers/nv50/nv50_screen.c +@@ -215,6 +215,7 @@ nv50_screen_destroy(struct pipe_screen *pscreen) + nouveau_fence_wait(screen->base.fence.current); + nouveau_fence_ref (NULL, &screen->base.fence.current); +} ++ screen->base.channel->user_private = NULL; + +nouveau_bo_ref(NULL, &screen->code); +nouveau_bo_ref(NULL, &screen->tls_bo); +@@ -300,6 +301,7 @@ nv50_screen_create(struct pipe_winsys *ws, struct nouveau_device *dev) + FAIL_SCREEN_INIT("nouveau_screen_init failed: %d\n", ret); + +chan = screen->base.channel; ++ chan->user_private = screen; + +pscreen->winsys = ws; +pscreen->destroy = nv50_screen_destroy; +diff --git a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c +index 11561f5..d29c1e9 100644 +--- a/src/gallium/drivers/nv50/nv50_state_validate.c b/src/gallium/drivers/nv50/nv50_state_validate.c +@@ -282,8 +282,7 @@ nv50_switch_pipe_context(struct nv50_context *ctx_to) +if (!ctx_to->zsa) + ctx_to->dirty &= ~NV50_NEW_ZSA; + +- ctx_to->screen->base.channel->user_private = ctx_to->screen->cur_ctx = +- ctx_to; ++ ctx_to->screen->cur_ctx = ctx_to; + } + + static struct state_validate { +diff --git a/src/gallium/drivers/nv50/nv50_vbo.c b/src/gallium/drivers/nv50/nv50_vbo.c +index bb08941..f23008a 100644 +--- a/src/gallium/drivers/nv50/nv50_vbo.c b/src/gallium/drivers/nv50/nv50_vbo.c +@@ -389,11 +389,11 @@ nv50_prim_gl(unsigned prim) + static void + nv50_draw_vbo_flush_notify(struct nouveau_channel *chan) + { +- struct nv50_context *nv50 = chan->user_private; ++ struct nv50_screen *screen = chan->user_private; + +- nouveau_fence_update(&nv50->screen->base, TRUE); ++ nouveau_fence_update(&screen->base, TRUE); + +- nv50_bufctx_emit_relocs(nv50); ++ nv50_bufctx_emit_relocs(screen->cur_ctx); + } + + static void +@@ -650,7 +650,6 @@ nv50_draw_vbo(struct pipe_context *pipe, const struct pipe_draw_info *info) +nv50_state_valida
mesa: Changes to 'ubuntu-oneiric'
debian/changelog| 17 + debian/patches/120_fix_tfp_texture_free.patch | 37 -- debian/patches/121-i965-fix-border-color.patch | 48 +++ debian/patches/122-i965-apply-post-sync-workaround.patch| 40 +++ debian/patches/123-i965-emit-depth-stalls-and-flushes.patch | 153 debian/patches/124-i965-last-render-target-select.patch | 32 ++ debian/patches/series |5 7 files changed, 294 insertions(+), 38 deletions(-) New commits: commit 4f0c77a6b92fd851ef1529e329f885f91096c78a Author: Robert Hooker Date: Thu Jul 19 16:50:59 2012 -0400 Import changes from already released 7.11-0ubuntu3.2 diff --git a/debian/changelog b/debian/changelog index e3cc9f8..ed508bb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,20 @@ +mesa (7.11-0ubuntu3.2) oneiric-proposed; urgency=low + + * Add patch series from upstream stable release to fix various issues: +- 121-i965-fix-border-color.patch: Fixes wrong colors in lightsmark + (LP: #966399) +- 122-i965-apply-post-sync-workaround.patch: Fixes GPU hangs in + Civilization 4, PlaneShift, Minecraft, Neverwinter Nights + (among others) on Sandybridge and Ivybridge. (LP: #966399) +- 123-i965-emit-depth-stalls-and-flushes.patch: Fixes GPU hangs when + running qgears2, lightsmark, and openarena on Ivybridge. (LP: #966399) +- 124-i965-last-render-target-select.patch: Fixes a GPU hang when + running Trine, or Unigine Heaven which crashes the desktop. (LP: #966399) + * Drop 120_fix_tfp_texture_free.patch from previous SRU, it was the +incorrect patch. + + -- Robert Hooker Tue, 20 Mar 2012 10:44:16 -0400 + mesa (7.11-0ubuntu3.1) oneiric-proposed; urgency=low * Add 120_fix_tfp_texture_free.patch: Fixes segmentation fault in diff --git a/debian/patches/120_fix_tfp_texture_free.patch b/debian/patches/120_fix_tfp_texture_free.patch deleted file mode 100644 index f9e97ae..000 --- a/debian/patches/120_fix_tfp_texture_free.patch +++ /dev/null @@ -1,37 +0,0 @@ -commit b2f1366c2825aeee3411c88db5c8e6b426191487 -Author: Bryce Harrington -Date: Thu Jan 26 15:30:24 2012 -0800 - -Backport of the following patch to oneiric: - -commit d430e81c3287eba4ee84ca1639a23f92bbe22c8e -Author: Eric Anholt -Date: Wed Sep 21 15:17:36 2011 -0700 - -intel: Fix improper freeing of texture data in TFP. - -If there happened to be ->Data present, we assertion failed instead -of handling it correctly. - -Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35234 -Acked-by: Kenneth Graunke - -Most of the surrounding code has changed, so it's unclear if this change -alone is sufficient to resolve the problem. - -diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c -index 269faef..4d0968e 100644 a/src/mesa/drivers/dri/intel/intel_tex_image.c -+++ b/src/mesa/drivers/dri/intel/intel_tex_image.c -@@ -822,10 +822,7 @@ intelSetTexBuffer2(__DRIcontext *pDRICtx, GLint target, -texImage = _mesa_get_tex_image(&intel->ctx, texObj, target, level); -intelImage = intel_texture_image(texImage); - -- if (intelImage->mt) { -- intel_miptree_release(intel, &intelImage->mt); -- assert(!texImage->Data); -- } -+ ctx->Driver.FreeTextureImageBuffer(ctx, image); -if (intelObj->mt) - intel_miptree_release(intel, &intelObj->mt); - diff --git a/debian/patches/121-i965-fix-border-color.patch b/debian/patches/121-i965-fix-border-color.patch new file mode 100644 index 000..4e3e867 --- /dev/null +++ b/debian/patches/121-i965-fix-border-color.patch @@ -0,0 +1,48 @@ +From da33bb5fde8f752c74ca4cd15c067c3a593bac97 Mon Sep 17 00:00:00 2001 +From: Kenneth Graunke +Date: Fri, 20 Jan 2012 03:33:40 -0800 +Subject: [PATCH] i965: Fix border color on Sandybridge and Ivybridge. + +While reading through the simulator, I found some interesting code that +looks like it checks the sampler default color pointer against the bound +set in STATE_BASE_ADDRESS. On failure, it appears to program it to the +base address itself. + +So I decided to try programming a legitimate bound, and lo and behold, +border color worked. + ++92 piglits on Sandybridge. Also fixes Lightsmark on Ivybridge. + +NOTE: This is a candidate for stable release branches. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=28924 +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38868 +Signed-off-by: Kenneth Graunke +Reviewed-by: Yuanhan Liu +Reviewed-by: Eric Anholt +--- + src/mesa/drivers/dri/i965/brw_misc_state.c |8 +++- + 1 files changed, 7 insertions(+), 1 deletions(-) + +diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c +index 033c77c..fd3ac13 100644 +--- a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/driv
mesa: Changes to 'ubuntu-oneiric'
debian/changelog | 10 +++ debian/patches/120_fix_tfp_texture_free.patch | 37 ++ debian/patches/series |1 3 files changed, 48 insertions(+) New commits: commit 41ea52abb2198581d7530340044c469fddf1fd28 Author: Bryce Harrington Date: Fri Feb 17 10:06:43 2012 -0800 * Add 120_fix_tfp_texture_free.patch: Fixes segmentation fault in nv50_screen_fence_update when running nouveau with the egl_dri2 driver or running the /usr/bin/es2_info utility. This is an upstream backport of a patch from mesa 8.0. (LP: #926918) diff --git a/debian/changelog b/debian/changelog index 9770c22..e3cc9f8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +mesa (7.11-0ubuntu3.1) oneiric-proposed; urgency=low + + * Add 120_fix_tfp_texture_free.patch: Fixes segmentation fault in +nv50_screen_fence_update when running nouveau with the egl_dri2 driver +or running the /usr/bin/es2_info utility. This is an upstream +backport of a patch from mesa 8.0. +(LP: #926918) + + -- Bryce Harrington Thu, 16 Feb 2012 12:07:57 -0800 + mesa (7.11-0ubuntu3) oneiric; urgency=low [ Christopher James Halse Rogers ] diff --git a/debian/patches/120_fix_tfp_texture_free.patch b/debian/patches/120_fix_tfp_texture_free.patch new file mode 100644 index 000..f9e97ae --- /dev/null +++ b/debian/patches/120_fix_tfp_texture_free.patch @@ -0,0 +1,37 @@ +commit b2f1366c2825aeee3411c88db5c8e6b426191487 +Author: Bryce Harrington +Date: Thu Jan 26 15:30:24 2012 -0800 + +Backport of the following patch to oneiric: + +commit d430e81c3287eba4ee84ca1639a23f92bbe22c8e +Author: Eric Anholt +Date: Wed Sep 21 15:17:36 2011 -0700 + +intel: Fix improper freeing of texture data in TFP. + +If there happened to be ->Data present, we assertion failed instead +of handling it correctly. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35234 +Acked-by: Kenneth Graunke + +Most of the surrounding code has changed, so it's unclear if this change +alone is sufficient to resolve the problem. + +diff --git a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c +index 269faef..4d0968e 100644 +--- a/src/mesa/drivers/dri/intel/intel_tex_image.c b/src/mesa/drivers/dri/intel/intel_tex_image.c +@@ -822,10 +822,7 @@ intelSetTexBuffer2(__DRIcontext *pDRICtx, GLint target, +texImage = _mesa_get_tex_image(&intel->ctx, texObj, target, level); +intelImage = intel_texture_image(texImage); + +- if (intelImage->mt) { +- intel_miptree_release(intel, &intelImage->mt); +- assert(!texImage->Data); +- } ++ ctx->Driver.FreeTextureImageBuffer(ctx, image); +if (intelObj->mt) + intel_miptree_release(intel, &intelObj->mt); + diff --git a/debian/patches/series b/debian/patches/series index ec47260..f8fe42b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -17,3 +17,4 @@ 117_handle_dri2connect_errors_when_indirect.diff 118_fix_24bpp_software_renering.diff 119_r600g_gnome_shell_rendering_fix.diff +120_fix_tfp_texture_free.patch -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1ryvxt-0008a0...@vasks.debian.org
mesa: Changes to 'ubuntu-oneiric'
New branch 'ubuntu-oneiric' available with the following commits: -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1ro3b3-0001i8...@vasks.debian.org