debian/changelog | 2 debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff | 91 ---------- 2 files changed, 1 insertion(+), 92 deletions(-)
New commits: commit 20b294ce48c0cff3b0f6e8e6bda48ad92cb7c458 Author: Bryce Harrington <br...@bryceharrington.org> Date: Mon May 4 12:47:06 2009 -0700 Last commit doubled up the patch. diff --git a/debian/changelog b/debian/changelog index 06b6b9f..8464ac0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mesa (7.4-0ubuntu3.1) jaunty-proposed; urgency=low +mesa (7.4-0ubuntu4) karmic; urgency=low * debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff: fix xserver segv triggered by compiz ring switcher plugin for users diff --git a/debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff b/debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff index 3900b01..6d72a52 100644 --- a/debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff +++ b/debian/patches/106_compiz_ring_switcher_xorg_segv_on_radeon.diff @@ -89,94 +89,3 @@ Index: mesa-7.4/src/mesa/drivers/dri/r300/r300_texstate.c } return !t->border_fallback; -# -# Ubuntu: https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/368049 -# Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=17895 -# Patch: http://cgit.freedesktop.org/mesa/mesa/commit/?h=mesa_7_4_branch&id=a1ce4efefbb7f796a0a24544a1e893a56848f0c1 -# Description: fix xserver segv triggered by compiz ring switcher plugin for users -# with r300/r400 radeon chipsets and -ati driver. Patch previously -# commited to mesa master as c28707b50701b1cf8727be29d61e2d939c6ee58f -# and also to mesa_7_4_branch as a1ce4efefbb7f796a0a24544a1e893a56848f0c1. -# Note: it was commited to the 7.4 branch after mesa 7.4.0 release. -# (LP: #368049) -# - -Index: mesa-7.4/src/mesa/drivers/dri/r300/r300_context.h -=================================================================== ---- mesa-7.4.orig/src/mesa/drivers/dri/r300/r300_context.h 2009-05-04 12:07:48.000000000 +0200 -+++ mesa-7.4/src/mesa/drivers/dri/r300/r300_context.h 2009-05-04 12:08:56.000000000 +0200 -@@ -211,7 +211,7 @@ - }; - - struct r300_texture_env_state { -- r300TexObjPtr texobj; -+ struct gl_texture_object *texobj; - GLenum format; - GLenum envMode; - }; -Index: mesa-7.4/src/mesa/drivers/dri/r300/r300_state.c -=================================================================== ---- mesa-7.4.orig/src/mesa/drivers/dri/r300/r300_state.c 2009-05-04 12:07:59.000000000 +0200 -+++ mesa-7.4/src/mesa/drivers/dri/r300/r300_state.c 2009-05-04 12:08:56.000000000 +0200 -@@ -1487,7 +1487,7 @@ - #endif - tmu_mappings[i] = hw_tmu; - -- t = r300->state.texture.unit[i].texobj; -+ t = (r300TexObjPtr) r300->state.texture.unit[i].texobj->DriverData; - /* XXX questionable fix for bug 9170: */ - if (!t) - continue; -Index: mesa-7.4/src/mesa/drivers/dri/r300/r300_texmem.c -=================================================================== ---- mesa-7.4.orig/src/mesa/drivers/dri/r300/r300_texmem.c 2009-05-04 12:08:07.000000000 +0200 -+++ mesa-7.4/src/mesa/drivers/dri/r300/r300_texmem.c 2009-05-04 12:08:56.000000000 +0200 -@@ -44,6 +44,7 @@ - #include "main/colormac.h" - #include "main/macros.h" - #include "main/simple_list.h" -+#include "main/texobj.h" - #include "radeon_reg.h" /* gets definition for usleep */ - #include "r300_context.h" - #include "r300_state.h" -@@ -71,8 +72,8 @@ - } - - for (i = 0; i < rmesa->radeon.glCtx->Const.MaxTextureUnits; i++) { -- if (rmesa->state.texture.unit[i].texobj == t) { -- rmesa->state.texture.unit[i].texobj = NULL; -+ if (rmesa->state.texture.unit[i].texobj == t->base.tObj) { -+ _mesa_reference_texobj(&rmesa->state.texture.unit[i].texobj, NULL); - } - } - } -Index: mesa-7.4/src/mesa/drivers/dri/r300/r300_texstate.c -=================================================================== ---- mesa-7.4.orig/src/mesa/drivers/dri/r300/r300_texstate.c 2009-05-04 12:08:17.000000000 +0200 -+++ mesa-7.4/src/mesa/drivers/dri/r300/r300_texstate.c 2009-05-04 12:08:56.000000000 +0200 -@@ -567,19 +567,20 @@ - /* Update state if this is a different texture object to last - * time. - */ -- if (rmesa->state.texture.unit[unit].texobj != t) { -+ if (rmesa->state.texture.unit[unit].texobj != tObj) { - if (rmesa->state.texture.unit[unit].texobj != NULL) { -+ r300TexObjPtr t_old = (r300TexObjPtr) rmesa->state.texture.unit[unit].texobj->DriverData; -+ - /* The old texture is no longer bound to this texture unit. - * Mark it as such. - */ - -- rmesa->state.texture.unit[unit].texobj->base.bound &= -- ~(1 << unit); -+ t_old->base.bound &= ~(1 << unit); - } - -- rmesa->state.texture.unit[unit].texobj = t; -+ _mesa_reference_texobj(&rmesa->state.texture.unit[unit].texobj, tObj); - t->base.bound |= (1 << unit); -- driUpdateTextureLRU((driTextureObject *) t); /* XXX: should be locked! */ -+ driUpdateTextureLRU(&t->base); /* XXX: should be locked! */ - } - - return !t->border_fallback; -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org