debian/changelog | 12 ++++++ debian/patches/04_emit_surface_state_after_flush.diff | 21 ++++++++++ debian/patches/05_dri2_buffer_failure_path_crash.diff | 36 ++++++++++++++++++ debian/patches/series | 2 + 4 files changed, 71 insertions(+)
New commits: commit ed6e411812966eb297ab11d3cf18e9f353e91f16 Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 11 16:04:43 2011 +1000 Release to natty diff --git a/debian/changelog b/debian/changelog index eb44356..b55e72d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; urgency=low +xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) natty; urgency=low * debian/patches/04_emit_surface_state_after_flush.diff: + Cherry-pick from upstream. Re-emit surface state after flush, or commit aac46ec9f6fedb7141196d7391f62427a6153aaa Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 11 16:00:26 2011 +1000 Revert "Build-depend on libdrm 2.4.24 for the new nouveau headers" We haven't picked up libdrm 2.4.24, so don't B/D on it. This reverts commit 13ca30fa7ece11d56fb934a7e4eecaf25797555a. diff --git a/debian/changelog b/debian/changelog index 1a6d43f..eb44356 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,8 +4,6 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; + Cherry-pick from upstream. Re-emit surface state after flush, or PGRAPH_TRAP_CCACHE_FAULTs will ruin your day and cause [mi] EQ overflow to eat your X. - * debian/control: - + Build-depend on libdrm 2.4.24 for moved nouveau headers * debian/patches/05_dri2_buffer_failure_path_crash.diff: + Cherry-pick from upstream. Return an error rather than crash the X server when failing to create a dri2 buffer. diff --git a/debian/control b/debian/control index 9ceb4d3..3d87155 100644 --- a/debian/control +++ b/debian/control @@ -15,7 +15,7 @@ Build-Depends: x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xext-dev, - libdrm-dev (>= 2.4.24), + libdrm-dev (>= 2.4.23), x11proto-xf86dri-dev, x11proto-gl-dev, mesa-common-dev, commit c571c2d475191bf7e886d526e1e262d003b829ef Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 11 16:00:19 2011 +1000 Revert 17775081: Drop patch to use older libdrm headers now 2.4.24 is available We're not picking up libdrm 2.4.24, this patch is still needed. diff --git a/debian/changelog b/debian/changelog index d04f670..1a6d43f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,8 +4,6 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; + Cherry-pick from upstream. Re-emit surface state after flush, or PGRAPH_TRAP_CCACHE_FAULTs will ruin your day and cause [mi] EQ overflow to eat your X. - * debian/patches/03_use_older_libdrm_headers.diff: - + Drop now that libdrm 2.4.24 is available. * debian/control: + Build-depend on libdrm 2.4.24 for moved nouveau headers * debian/patches/05_dri2_buffer_failure_path_crash.diff: diff --git a/debian/patches/03_use_older_libdrm_headers.diff b/debian/patches/03_use_older_libdrm_headers.diff new file mode 100644 index 0000000..4e4356b --- /dev/null +++ b/debian/patches/03_use_older_libdrm_headers.diff @@ -0,0 +1,205 @@ +commit c2092a458401377f421d9bdfe1d97ce580b99508 +Author: Ben Skeggs <bske...@redhat.com> +Date: Mon Dec 20 11:50:57 2010 +1000 + + include nv04_pushbuf.h for ring macros, rather than nouveau_pushbuf.h + + Signed-off-by: Ben Skeggs <bske...@redhat.com> + +diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c +index 2dd6da4..45add0f 100644 +--- a/src/nouveau_dri2.c ++++ b/src/nouveau_dri2.c +@@ -5,6 +5,7 @@ + + #include "xorg-server.h" + #include "nv_include.h" ++#include "nouveau_pushbuf.h" + #ifdef DRI2 + #include "dri2.h" + #endif +diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c +index 4618994..4e9f946 100644 +--- a/src/nouveau_exa.c ++++ b/src/nouveau_exa.c +@@ -21,6 +21,7 @@ + */ + + #include "nv_include.h" ++#include "nv04_pushbuf.h" + #include "exa.h" + + static inline Bool +diff --git a/src/nouveau_xv.c b/src/nouveau_xv.c +index dba153c..c1d4ccb 100644 +--- a/src/nouveau_xv.c ++++ b/src/nouveau_xv.c +@@ -35,6 +35,8 @@ + #include "nv_include.h" + #include "nv_dma.h" + ++#include "nv04_pushbuf.h" ++ + #include "vl_hwmc.h" + + #define IMAGE_MAX_W 2046 +diff --git a/src/nv04_exa.c b/src/nv04_exa.c +index 2760d4b..f2819d2 100644 +--- a/src/nv04_exa.c ++++ b/src/nv04_exa.c +@@ -23,6 +23,8 @@ + #include "nv_include.h" + #include "nv_rop.h" + ++#include "nv04_pushbuf.h" ++ + static void + NV04EXASetPattern(ScrnInfoPtr pScrn, CARD32 clr0, CARD32 clr1, + CARD32 pat0, CARD32 pat1) +diff --git a/src/nv04_xv_blit.c b/src/nv04_xv_blit.c +index be39c0d..1b8de4f 100644 +--- a/src/nv04_xv_blit.c ++++ b/src/nv04_xv_blit.c +@@ -34,6 +34,8 @@ + #include "nv_include.h" + #include "nv_dma.h" + ++#include "nv04_pushbuf.h" ++ + #define FOURCC_RGB 0x0000003 + + #define VSYNC_POSSIBLE (pNv->dev->chipset >= 0x11) +diff --git a/src/nv10_exa.c b/src/nv10_exa.c +index 1acb583..1cf7a5b 100644 +--- a/src/nv10_exa.c ++++ b/src/nv10_exa.c +@@ -28,6 +28,7 @@ + #endif + + #include "nv_include.h" ++#include "nv04_pushbuf.h" + + /* Texture/Render target formats. */ + static struct pict_format { +diff --git a/src/nv30_exa.c b/src/nv30_exa.c +index b34b29c..a4dd37d 100644 +--- a/src/nv30_exa.c ++++ b/src/nv30_exa.c +@@ -25,6 +25,7 @@ + + #include "nv_include.h" + #include "nv30_shaders.h" ++#include "nv04_pushbuf.h" + + typedef struct nv_pict_surface_format { + int pict_fmt; +diff --git a/src/nv30_shaders.c b/src/nv30_shaders.c +index 7316082..fb93ef8 100644 +--- a/src/nv30_shaders.c ++++ b/src/nv30_shaders.c +@@ -22,6 +22,7 @@ + + + #include "nv30_shaders.h" ++#include "nv04_pushbuf.h" + + void NV30_UploadFragProg(NVPtr pNv, nv_shader_t *shader, int *hw_offset) + { +diff --git a/src/nv30_xv_tex.c b/src/nv30_xv_tex.c +index ffa68e4..6d4e089 100644 +--- a/src/nv30_xv_tex.c ++++ b/src/nv30_xv_tex.c +@@ -37,6 +37,7 @@ + #include "nv_dma.h" + + #include "nv30_shaders.h" ++#include "nv04_pushbuf.h" + + extern Atom xvSyncToVBlank, xvSetDefaults; + +diff --git a/src/nv40_exa.c b/src/nv40_exa.c +index ffee0e6..b14a829 100644 +--- a/src/nv40_exa.c ++++ b/src/nv40_exa.c +@@ -22,6 +22,7 @@ + + #include "nv_include.h" + #include "nv30_shaders.h" ++#include "nv04_pushbuf.h" + + typedef struct nv_pict_surface_format { + int pict_fmt; +diff --git a/src/nv40_xv_tex.c b/src/nv40_xv_tex.c +index e0444e8..0910e12 100644 +--- a/src/nv40_xv_tex.c ++++ b/src/nv40_xv_tex.c +@@ -37,6 +37,7 @@ + #include "nv_dma.h" + + #include "nv30_shaders.h" ++#include "nv04_pushbuf.h" + + extern Atom xvSyncToVBlank, xvSetDefaults; + +diff --git a/src/nv50_accel.h b/src/nv50_accel.h +index 9cdbbab..fac5cbb 100644 +--- a/src/nv50_accel.h ++++ b/src/nv50_accel.h +@@ -1,6 +1,8 @@ + #ifndef __NV50_ACCEL_H__ + #define __NV50_ACCEL_H__ + ++#include "nv04_pushbuf.h" ++ + /* "Tesla scratch buffer" offsets */ + #define PVP_OFFSET 0x00000000 /* Vertex program */ + #define PFP_OFFSET 0x00001000 /* Fragment program */ +diff --git a/src/nv50_exa.c b/src/nv50_exa.c +index e86f903..e8ff5aa 100644 +--- a/src/nv50_exa.c ++++ b/src/nv50_exa.c +@@ -24,6 +24,7 @@ + #include "nv_include.h" + #include "nv_rop.h" + ++#include "nv04_pushbuf.h" + #include "nv50_accel.h" + #include "nv50_texture.h" + +diff --git a/src/nv_accel_common.c b/src/nv_accel_common.c +index 1ade291..b1553f6 100644 +--- a/src/nv_accel_common.c ++++ b/src/nv_accel_common.c +@@ -21,6 +21,7 @@ + */ + + #include "nv_include.h" ++#include "nv04_pushbuf.h" + + Bool + nouveau_allocate_surface(ScrnInfoPtr scrn, int width, int height, int bpp, +diff --git a/src/nv_driver.c b/src/nv_driver.c +index e2df82e..f4aa2bc 100644 +--- a/src/nv_driver.c ++++ b/src/nv_driver.c +@@ -24,6 +24,8 @@ + + #include "nv_include.h" + ++#include "nouveau_pushbuf.h" ++ + #include "xorg-server.h" + #include "xf86int10.h" + #include "xf86drm.h" +diff --git a/src/nv_include.h b/src/nv_include.h +index 48f0b21..9cb697a 100644 +--- a/src/nv_include.h ++++ b/src/nv_include.h +@@ -75,7 +75,6 @@ + #include "nouveau_drmif.h" + #include "nouveau_device.h" + #include "nouveau_channel.h" +-#include "nouveau_pushbuf.h" + #include "nouveau_bo.h" + #include "nouveau_grobj.h" + #include "nouveau_notifier.h" diff --git a/debian/patches/series b/debian/patches/series index ffa3c6e..c1beaf4 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,5 @@ 01-set-NV_DRIVER_DATE-from-ChangeLog.diff 02_nouveau_bgnr +03_use_older_libdrm_headers.diff -R 04_emit_surface_state_after_flush.diff 05_dri2_buffer_failure_path_crash.diff commit 19f51362dae6bc6b068ef08b3b6be1f8276fa79d Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 4 16:59:17 2011 +1000 Cherry-pick fix for Xserver crash on dri2 failure path diff --git a/debian/changelog b/debian/changelog index 291c460..d04f670 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,8 +8,11 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; + Drop now that libdrm 2.4.24 is available. * debian/control: + Build-depend on libdrm 2.4.24 for moved nouveau headers + * debian/patches/05_dri2_buffer_failure_path_crash.diff: + + Cherry-pick from upstream. Return an error rather than crash the X + server when failing to create a dri2 buffer. - -- Christopher James Halse Rogers <r...@ubuntu.com> Mon, 04 Apr 2011 16:00:15 +1000 + -- Christopher James Halse Rogers <r...@ubuntu.com> Mon, 04 Apr 2011 16:58:30 +1000 xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu6) natty; urgency=low diff --git a/debian/patches/05_dri2_buffer_failure_path_crash.diff b/debian/patches/05_dri2_buffer_failure_path_crash.diff new file mode 100644 index 0000000..f609ad7 --- /dev/null +++ b/debian/patches/05_dri2_buffer_failure_path_crash.diff @@ -0,0 +1,36 @@ +commit ace98a492353e6de712f4f717e6d3f562e3591f0 +Author: Ben Skeggs <bske...@redhat.com> +Date: Tue Mar 1 13:54:38 2011 +1000 + + dri2: return an error rather than crashing if we can't allocate a buffer + + Signed-off-by: Ben Skeggs <bske...@redhat.com> + +diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c +index d5afa8a..1a68ed3 100644 +--- a/src/nouveau_dri2.c ++++ b/src/nouveau_dri2.c +@@ -29,6 +29,7 @@ nouveau_dri2_create_buffer(DrawablePtr pDraw, unsigned int attachment, + ScreenPtr pScreen = pDraw->pScreen; + NVPtr pNv = NVPTR(xf86Screens[pScreen->myNum]); + struct nouveau_dri2_buffer *nvbuf; ++ struct nouveau_pixmap *nvpix; + PixmapPtr ppix; + + nvbuf = calloc(1, sizeof(*nvbuf)); +@@ -70,7 +71,14 @@ nouveau_dri2_create_buffer(DrawablePtr pDraw, unsigned int attachment, + nvbuf->base.flags = 0; + nvbuf->ppix = ppix; + +- nouveau_bo_handle_get(nouveau_pixmap(ppix)->bo, &nvbuf->base.name); ++ nvpix = nouveau_pixmap(ppix); ++ if (!nvpix || !nvpix->bo || ++ nouveau_bo_handle_get(nvpix->bo, &nvbuf->base.name)) { ++ pScreen->DestroyPixmap(nvbuf->ppix); ++ free(nvbuf); ++ return NULL; ++ } ++ + return &nvbuf->base; + } + diff --git a/debian/patches/series b/debian/patches/series index dd4ec71..ffa3c6e 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ 01-set-NV_DRIVER_DATE-from-ChangeLog.diff 02_nouveau_bgnr 04_emit_surface_state_after_flush.diff +05_dri2_buffer_failure_path_crash.diff commit 13ca30fa7ece11d56fb934a7e4eecaf25797555a Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 4 16:03:26 2011 +1000 Build-depend on libdrm 2.4.24 for the new nouveau headers diff --git a/debian/changelog b/debian/changelog index 0a6afec..291c460 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,8 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; to eat your X. * debian/patches/03_use_older_libdrm_headers.diff: + Drop now that libdrm 2.4.24 is available. + * debian/control: + + Build-depend on libdrm 2.4.24 for moved nouveau headers -- Christopher James Halse Rogers <r...@ubuntu.com> Mon, 04 Apr 2011 16:00:15 +1000 diff --git a/debian/control b/debian/control index 3d87155..9ceb4d3 100644 --- a/debian/control +++ b/debian/control @@ -15,7 +15,7 @@ Build-Depends: x11proto-randr-dev (>= 1.2), x11proto-render-dev, x11proto-xext-dev, - libdrm-dev (>= 2.4.23), + libdrm-dev (>= 2.4.24), x11proto-xf86dri-dev, x11proto-gl-dev, mesa-common-dev, commit 177750816f51e8acff7f43c0a1bf6f56f5044f5a Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Mon Apr 4 16:02:31 2011 +1000 Drop patch to use older libdrm headers now 2.4.24 is available diff --git a/debian/changelog b/debian/changelog index e696d92..0a6afec 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,8 +4,10 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; + Cherry-pick from upstream. Re-emit surface state after flush, or PGRAPH_TRAP_CCACHE_FAULTs will ruin your day and cause [mi] EQ overflow to eat your X. + * debian/patches/03_use_older_libdrm_headers.diff: + + Drop now that libdrm 2.4.24 is available. - -- Christopher James Halse Rogers <r...@ubuntu.com> Fri, 01 Apr 2011 17:45:47 +1100 + -- Christopher James Halse Rogers <r...@ubuntu.com> Mon, 04 Apr 2011 16:00:15 +1000 xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu6) natty; urgency=low diff --git a/debian/patches/03_use_older_libdrm_headers.diff b/debian/patches/03_use_older_libdrm_headers.diff deleted file mode 100644 index 4e4356b..0000000 --- a/debian/patches/03_use_older_libdrm_headers.diff +++ /dev/null @@ -1,205 +0,0 @@ -commit c2092a458401377f421d9bdfe1d97ce580b99508 -Author: Ben Skeggs <bske...@redhat.com> -Date: Mon Dec 20 11:50:57 2010 +1000 - - include nv04_pushbuf.h for ring macros, rather than nouveau_pushbuf.h - - Signed-off-by: Ben Skeggs <bske...@redhat.com> - -diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c -index 2dd6da4..45add0f 100644 ---- a/src/nouveau_dri2.c -+++ b/src/nouveau_dri2.c -@@ -5,6 +5,7 @@ - - #include "xorg-server.h" - #include "nv_include.h" -+#include "nouveau_pushbuf.h" - #ifdef DRI2 - #include "dri2.h" - #endif -diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c -index 4618994..4e9f946 100644 ---- a/src/nouveau_exa.c -+++ b/src/nouveau_exa.c -@@ -21,6 +21,7 @@ - */ - - #include "nv_include.h" -+#include "nv04_pushbuf.h" - #include "exa.h" - - static inline Bool -diff --git a/src/nouveau_xv.c b/src/nouveau_xv.c -index dba153c..c1d4ccb 100644 ---- a/src/nouveau_xv.c -+++ b/src/nouveau_xv.c -@@ -35,6 +35,8 @@ - #include "nv_include.h" - #include "nv_dma.h" - -+#include "nv04_pushbuf.h" -+ - #include "vl_hwmc.h" - - #define IMAGE_MAX_W 2046 -diff --git a/src/nv04_exa.c b/src/nv04_exa.c -index 2760d4b..f2819d2 100644 ---- a/src/nv04_exa.c -+++ b/src/nv04_exa.c -@@ -23,6 +23,8 @@ - #include "nv_include.h" - #include "nv_rop.h" - -+#include "nv04_pushbuf.h" -+ - static void - NV04EXASetPattern(ScrnInfoPtr pScrn, CARD32 clr0, CARD32 clr1, - CARD32 pat0, CARD32 pat1) -diff --git a/src/nv04_xv_blit.c b/src/nv04_xv_blit.c -index be39c0d..1b8de4f 100644 ---- a/src/nv04_xv_blit.c -+++ b/src/nv04_xv_blit.c -@@ -34,6 +34,8 @@ - #include "nv_include.h" - #include "nv_dma.h" - -+#include "nv04_pushbuf.h" -+ - #define FOURCC_RGB 0x0000003 - - #define VSYNC_POSSIBLE (pNv->dev->chipset >= 0x11) -diff --git a/src/nv10_exa.c b/src/nv10_exa.c -index 1acb583..1cf7a5b 100644 ---- a/src/nv10_exa.c -+++ b/src/nv10_exa.c -@@ -28,6 +28,7 @@ - #endif - - #include "nv_include.h" -+#include "nv04_pushbuf.h" - - /* Texture/Render target formats. */ - static struct pict_format { -diff --git a/src/nv30_exa.c b/src/nv30_exa.c -index b34b29c..a4dd37d 100644 ---- a/src/nv30_exa.c -+++ b/src/nv30_exa.c -@@ -25,6 +25,7 @@ - - #include "nv_include.h" - #include "nv30_shaders.h" -+#include "nv04_pushbuf.h" - - typedef struct nv_pict_surface_format { - int pict_fmt; -diff --git a/src/nv30_shaders.c b/src/nv30_shaders.c -index 7316082..fb93ef8 100644 ---- a/src/nv30_shaders.c -+++ b/src/nv30_shaders.c -@@ -22,6 +22,7 @@ - - - #include "nv30_shaders.h" -+#include "nv04_pushbuf.h" - - void NV30_UploadFragProg(NVPtr pNv, nv_shader_t *shader, int *hw_offset) - { -diff --git a/src/nv30_xv_tex.c b/src/nv30_xv_tex.c -index ffa68e4..6d4e089 100644 ---- a/src/nv30_xv_tex.c -+++ b/src/nv30_xv_tex.c -@@ -37,6 +37,7 @@ - #include "nv_dma.h" - - #include "nv30_shaders.h" -+#include "nv04_pushbuf.h" - - extern Atom xvSyncToVBlank, xvSetDefaults; - -diff --git a/src/nv40_exa.c b/src/nv40_exa.c -index ffee0e6..b14a829 100644 ---- a/src/nv40_exa.c -+++ b/src/nv40_exa.c -@@ -22,6 +22,7 @@ - - #include "nv_include.h" - #include "nv30_shaders.h" -+#include "nv04_pushbuf.h" - - typedef struct nv_pict_surface_format { - int pict_fmt; -diff --git a/src/nv40_xv_tex.c b/src/nv40_xv_tex.c -index e0444e8..0910e12 100644 ---- a/src/nv40_xv_tex.c -+++ b/src/nv40_xv_tex.c -@@ -37,6 +37,7 @@ - #include "nv_dma.h" - - #include "nv30_shaders.h" -+#include "nv04_pushbuf.h" - - extern Atom xvSyncToVBlank, xvSetDefaults; - -diff --git a/src/nv50_accel.h b/src/nv50_accel.h -index 9cdbbab..fac5cbb 100644 ---- a/src/nv50_accel.h -+++ b/src/nv50_accel.h -@@ -1,6 +1,8 @@ - #ifndef __NV50_ACCEL_H__ - #define __NV50_ACCEL_H__ - -+#include "nv04_pushbuf.h" -+ - /* "Tesla scratch buffer" offsets */ - #define PVP_OFFSET 0x00000000 /* Vertex program */ - #define PFP_OFFSET 0x00001000 /* Fragment program */ -diff --git a/src/nv50_exa.c b/src/nv50_exa.c -index e86f903..e8ff5aa 100644 ---- a/src/nv50_exa.c -+++ b/src/nv50_exa.c -@@ -24,6 +24,7 @@ - #include "nv_include.h" - #include "nv_rop.h" - -+#include "nv04_pushbuf.h" - #include "nv50_accel.h" - #include "nv50_texture.h" - -diff --git a/src/nv_accel_common.c b/src/nv_accel_common.c -index 1ade291..b1553f6 100644 ---- a/src/nv_accel_common.c -+++ b/src/nv_accel_common.c -@@ -21,6 +21,7 @@ - */ - - #include "nv_include.h" -+#include "nv04_pushbuf.h" - - Bool - nouveau_allocate_surface(ScrnInfoPtr scrn, int width, int height, int bpp, -diff --git a/src/nv_driver.c b/src/nv_driver.c -index e2df82e..f4aa2bc 100644 ---- a/src/nv_driver.c -+++ b/src/nv_driver.c -@@ -24,6 +24,8 @@ - - #include "nv_include.h" - -+#include "nouveau_pushbuf.h" -+ - #include "xorg-server.h" - #include "xf86int10.h" - #include "xf86drm.h" -diff --git a/src/nv_include.h b/src/nv_include.h -index 48f0b21..9cb697a 100644 ---- a/src/nv_include.h -+++ b/src/nv_include.h -@@ -75,7 +75,6 @@ - #include "nouveau_drmif.h" - #include "nouveau_device.h" - #include "nouveau_channel.h" --#include "nouveau_pushbuf.h" - #include "nouveau_bo.h" - #include "nouveau_grobj.h" - #include "nouveau_notifier.h" diff --git a/debian/patches/series b/debian/patches/series index ec0fc1d..dd4ec71 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,4 +1,3 @@ 01-set-NV_DRIVER_DATE-from-ChangeLog.diff 02_nouveau_bgnr -03_use_older_libdrm_headers.diff -R 04_emit_surface_state_after_flush.diff commit bd8fd0b7531ec65d041ff1efe1d6b2c628dd284d Author: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com> Date: Fri Apr 1 17:47:41 2011 +1100 Add cherry-pick for PGRAPH_TRAP_CCACHE_FAULT fix in nv50_exa diff --git a/debian/changelog b/debian/changelog index e9afbd1..e696d92 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu7) UNRELEASED; urgency=low + + * debian/patches/04_emit_surface_state_after_flush.diff: + + Cherry-pick from upstream. Re-emit surface state after flush, or + PGRAPH_TRAP_CCACHE_FAULTs will ruin your day and cause [mi] EQ overflow + to eat your X. + + -- Christopher James Halse Rogers <r...@ubuntu.com> Fri, 01 Apr 2011 17:45:47 +1100 + xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu6) natty; urgency=low * Rebuild to pick up new Xserver dependencies diff --git a/debian/patches/04_emit_surface_state_after_flush.diff b/debian/patches/04_emit_surface_state_after_flush.diff new file mode 100644 index 0000000..cd0105a --- /dev/null +++ b/debian/patches/04_emit_surface_state_after_flush.diff @@ -0,0 +1,21 @@ +commit 8378443bd3b26b57ef2ae424a700e01ead813d33 +Author: Ben Skeggs <bske...@redhat.com> +Date: Thu Mar 24 02:13:12 2011 +1000 + + nv50-nvc0/exa: fix bug causing surface state to not be reemitted after flush + + Signed-off-by: Ben Skeggs <bske...@redhat.com> + +Index: xserver-xorg-video-nouveau/src/nv50_exa.c +=================================================================== +--- xserver-xorg-video-nouveau.orig/src/nv50_exa.c 2011-04-01 15:32:37.000000000 +1100 ++++ xserver-xorg-video-nouveau/src/nv50_exa.c 2011-04-01 15:32:46.973917560 +1100 +@@ -362,7 +362,7 @@ + if (MARK_RING(pNv->chan, 32, 2)) + return; + +- if (NV50EXAAcquireSurface2D(pNv->pdpix, 0)) ++ if (!NV50EXAAcquireSurface2D(pNv->pdpix, 0)) + MARK_UNDO(pNv->chan); + } + diff --git a/debian/patches/series b/debian/patches/series index 9fa7f76..ec0fc1d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,4 @@ 01-set-NV_DRIVER_DATE-from-ChangeLog.diff 02_nouveau_bgnr 03_use_older_libdrm_headers.diff -R +04_emit_surface_state_after_flush.diff -- 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/e1q9auj-0007pw...@alioth.debian.org