COPYING | 169 +++ ChangeLog | 2518 +++++++++++++++++++++++++++++++++++++++++++++++++ NEWS | 162 +++ configure.ac | 4 debian/README.source | 2 debian/changelog | 14 debian/control | 8 debian/xsfbs/xsfbs.mk | 35 src/Makefile.am | 6 src/common.h | 3 src/drmmode_display.c | 87 - src/i810_dga.c | 4 src/i810_dri.c | 91 - src/i810_driver.c | 12 src/i810_hwmc.c | 10 src/i810_video.c | 26 src/i830.h | 135 +- src/i830_3d.c | 4 src/i830_accel.c | 2 src/i830_batchbuffer.c | 172 +-- src/i830_batchbuffer.h | 93 - src/i830_dri.c | 265 ++--- src/i830_driver.c | 176 --- src/i830_hwmc.c | 239 +++- src/i830_hwmc.h | 54 - src/i830_memory.c | 172 +-- src/i830_render.c | 294 +++-- src/i830_uxa.c | 680 ++++++++----- src/i830_video.c | 54 - src/i830_video.h | 2 src/i915_3d.c | 11 src/i915_3d.h | 860 +++++++++------- src/i915_hwmc.c | 301 ----- src/i915_hwmc.h | 47 src/i915_reg.h | 27 src/i915_render.c | 1152 ++++++++++++++-------- src/i915_video.c | 160 +-- src/i965_hwmc.c | 280 ----- src/i965_hwmc.h | 16 src/i965_render.c | 191 ++- src/i965_video.c | 26 src/xvmc/Makefile.am | 2 src/xvmc/i915_xvmc.c | 239 ---- src/xvmc/i915_xvmc.h | 34 src/xvmc/i965_xvmc.c | 90 - src/xvmc/i965_xvmc.h | 1 src/xvmc/intel_xvmc.c | 233 ---- src/xvmc/intel_xvmc.h | 49 src/xvmc/xvmc_vld.c | 139 -- src/xvmc/xvmc_vld.h | 1 uxa/uxa-accel.c | 543 +++++++--- uxa/uxa-glyphs.c | 1526 +++++++++++++++++------------ uxa/uxa-priv.h | 118 +- uxa/uxa-render.c | 1359 +++++++++++++++++++------- uxa/uxa.c | 82 - uxa/uxa.h | 46 56 files changed, 8391 insertions(+), 4635 deletions(-)
New commits: commit fdc3faf1a5e9ec6eee697febf3d25e72eb72eeb7 Author: Brice Goglin <bgog...@debian.org> Date: Sat Jun 26 00:27:17 2010 +0200 Prepare changelog for upload diff --git a/debian/changelog b/debian/changelog index bf5c8b0..b37430d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,10 +1,10 @@ -xserver-xorg-video-intel (2:2.12.0-1) UNRELEASED; urgency=low +xserver-xorg-video-intel (2:2.12.0-1) experimental; urgency=low * New upstream release. + Fix Xv distortion, closes: #581705. * Bump libdrm build-dependency to 2.4.21. - -- Brice Goglin <bgog...@debian.org> Sat, 26 Jun 2010 00:22:00 +0200 + -- Brice Goglin <bgog...@debian.org> Sat, 26 Jun 2010 00:26:59 +0200 xserver-xorg-video-intel (2:2.11.0-1) experimental; urgency=low commit 5f5f3c4b61cd74f8e23fa52896ef29ba81533a1f Author: Brice Goglin <bgog...@debian.org> Date: Sat Jun 26 00:24:23 2010 +0200 Bump libdrm build-dependency to 2.4.21 diff --git a/debian/changelog b/debian/changelog index 8f82027..c9d596d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,7 @@ xserver-xorg-video-intel (2:2.12.0-1) UNRELEASED; urgency=low * New upstream release. + Fix Xv distortion, closes: #581705. + * Bump libdrm build-dependency to 2.4.21. -- Brice Goglin <bgog...@debian.org> Sat, 26 Jun 2010 00:22:00 +0200 diff --git a/debian/control b/debian/control index 3b07c29..61185d0 100644 --- a/debian/control +++ b/debian/control @@ -15,7 +15,7 @@ Build-Depends: x11proto-xext-dev, x11proto-video-dev, libx11-dev, - libdrm-dev (>= 2.4.18-3), + libdrm-dev (>= 2.4.21), x11proto-xf86dri-dev, x11proto-gl-dev, libgl1-mesa-dev | libgl-dev, commit 7895d3616dc1b03ce5af024b933f5b1864702cfa Author: Brice Goglin <bgog...@debian.org> Date: Sat Jun 26 00:23:01 2010 +0200 New upstream release diff --git a/ChangeLog b/ChangeLog index 988698a..bd36be7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,2521 @@ +commit ca16e3133658504b68a6b5c83bb8712899016544 +Author: Carl Worth <cwo...@cworth.org> +Date: Thu Jun 24 14:07:15 2010 -0700 + + Update version to 2.12.0 + + For the imminent 2.12.0 release. + +commit 8caf1564a75d65636d9b7a4da03219bb302bb37b +Author: Carl Worth <cwo...@cworth.org> +Date: Thu Jun 24 14:06:43 2010 -0700 + + NEWS: Add notes for the 2.12.0 release. + + Let it ship! + +commit b58a6a39c1568800938eb0e3ebc7664683b61200 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 23 23:56:44 2010 +0100 + + uxa: Fallback to pixman if source is out-of-bounds + + If the source is outside the drawable, then CopyArea will fail to + initialise the source correctly. The simplest fix in this case is to + fallback to pixman to generate the source texture. + + Fixes: + + Bug 28497 - Graphics corruption after opening a specific website + https://bugs.freedesktop.org/show_bug.cgi?id=28497 + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 6d33e578de4e23336ac69cc3c5d0935a65d4dda1 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 23 21:28:50 2010 +0100 + + Limit maximum tiled stride to 8k and untiled to 32k. + + Tiling on gen 2/3 hardware is only supported for pitches up to 8192 + bytes, so above this limit the surface will be untiled and we will no + longer have to comply with the power-of-two pitch alignment. So + disabling tiling for these too wide surface should ~halve the memory + requirement for the full surface. + + Also the absolute limit for the 2D blitter is 32,768 bytes. The + documentation says "up to 32,768 bytes" and my PineView box was + malfunction with a surface stride of 32,768 so set the limit to be + 32,767. + + References: + + Bug 28497 - Graphics corruption after opening a specific website + https://bugs.freedesktop.org/show_bug.cgi?id=28497 + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 5bf470bd38b1f6a7a540585186a54c9dbbca98f9 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 22:28:58 2010 +0100 + + i965: Compile fix. + + Oops, I spent more time discussing these flushing bugs than I spent + paying attention to what I was actually doing. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 0203cf91b54ee8a7cea8560e559288ee9b6e8554 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 22:25:08 2010 +0100 + + Do not clear need_mi_flush within the batch. + + This is a situation that should not be possible, need_mi_flush being + true but the list of pending flush pixmaps being clear. However, an + earlier bug in doing just that revealed this minor bug. So for + correctness, be careful not to clear need_mi_flush without emitting a + MI_FLUSH. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 5107b6fa26ecfdbdd60b869a86765c9c484db3a2 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 22:21:58 2010 +0100 + + i965: Mark the render target as dirty within composite_setup() + + The key difference between i965 and earlier, is that the surfaces passed + to the samplers through an indirect table and so the batch and render + target was not being marked dirty by the relocation (since the + relocation only happens within prepare_composite() which may have been + in another batch.) Simply call intel_pixmap_mark_dirty() when binding + the sampler table into the batch to ensure that the dirty is tracked + appropriately. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit bebd64d82121d2b61893e1d0adebda03f4faea61 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 22:05:19 2010 +0100 + + Also submit any pending flush for *this* batch in the BlockHander. + + We still need to submit an additional flush if we have further writes + since the last flush. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit c4d200517755e6b0f48d6c6a6ba8dd0ddc883d8b +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 21:57:21 2010 +0100 + + Only append the pixmap to the flushing list if we are writing to it. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit c942585098ac84ae461821cbb8f52dedce7a0da1 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 21 21:45:04 2010 +0100 + + Emit the flush after a potential draw from the BlockHandler. + + As the batch submit may not trigger further drawing through flushing the + vertices, pass the requirement to emit the flush down to the submission + routine so that the flush can be appended after the final commands. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit e8783869ad55d337601b6f6a51c02f6576c64f38 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sun Jun 20 00:09:20 2010 +0100 + + uxa: Apply the source offsets to the pixmap source, not target. + + A slight confusion in computing the correction image location resulted + in the application of the source offsets to the pixel location in the + target and not in the source as intended. + + Fixes the visual corruption of the scrollbar in Chromium, and hopefully + the crash reported by Robert Hooker when starting gdm after plymouth. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 4b7142baa0b3bf6f38843d06aadc579d8624cefc +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat Jun 19 12:30:23 2010 +0100 + + uxa: Enable SHM pixmaps + + Now with streaming uploads and downloads for composite operations in + place, shared memory pixmaps are no longer that dire performance wise. + With careful use these can in fact be the most efficient means of + transfer between a wholly software renderer in the client and a backing + store. For instance, Chromium renders internally to an ARGB32 image + buffer and uses a shared pixmap to composite dirty regions into the + backing store. Thereby using the GPU to either perform the blit or the + format conversion. Enabling shared pixmaps, reduces our CPU overhead + whilst scrolling by a factor of 5 or so. + + And this is achieved simply by deleting obsolete code! + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit d748f8e6fcebdf5b5b00c90b6c3d519560ee2928 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Thu Jun 17 18:29:55 2010 +0100 + + uxa: Use accelerated get_image for copying to !offscreen + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 78ee25f005fac9e9cc85425aa3fca8c396d015ea +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Thu Jun 17 18:37:32 2010 +0100 + + uxa: Match depth 30 to format. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit af5c4fc96db56a14bf6347774d8e8f23b38c5967 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat Jun 19 13:36:20 2010 +0100 + + uxa: Check for allocation failure. + + Check for the NULL Picture prior to passing it to the backends for + inspection. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit be55066c6481b4c5e2cd39ef1c0f3be88cae0c93 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Thu Jun 17 14:23:21 2010 +0100 + + i830: Remove domain tracking from pixmaps. + + The 4 integers can be reduced to a single boolean value, so do so. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit c187da9a24e98cbdf86f0f0dfbdcd9025c8a4c76 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 16 13:16:28 2010 +0100 + + i830: GetImage acceleration. + + The presumption is that we wish to keep the target hot, so + copy to a new bo and move that to the CPU in preference to + causing ping-pong of the original. + + Also the gpu is much faster at detiling. + + Before (PineView): + 400000 trep @ 0.1128 msec ( 8860.0/sec): GetImage 10x10 square + 18000 trep @ 1.3839 msec ( 723.0/sec): GetImage 100x100 square + 800 trep @ 30.0987 msec ( 33.2/sec): GetImage 500x500 square + + After: (PineView) + 180000 trep @ 0.1478 msec ( 6770.0/sec): GetImage 10x10 square + 60000 trep @ 0.4545 msec ( 2200.0/sec): GetImage 100x100 square + 4000 trep @ 8.0739 msec ( 124.0/sec): GetImage 500x500 square + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 0e0101758438debf98f989d815989b45e78cf5f6 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 15 12:48:57 2010 +0100 + + i830: Tidy i830_uxa_put_image() + + Use a single code path to upload the image data after selecting the + right bo, and take advantage of pwrite() when possible. + + Fixes: + + Bug 28569 - [i965] IGN's flash-based video player crashes X + https://bugs.freedesktop.org/show_bug.cgi?id=28569 + + Bug 28573 - [i965] Fullscreen flash and windowed SDL games fail to + update the screen + https://bugs.freedesktop.org/show_bug.cgi?id=28573 + + Reported-and-tested-by: Brian Rogers <br...@xyzw.org> + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 2ff7a2fc9d939554502e9adec89cae5597a9e82c +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Thu Jun 17 13:56:30 2010 +0100 + + i915: Force the emission of BUF_INFO on every composite_setup + + We should be able to eliminate these as the drawable remains unchanged. + However, the implicit flush of BUF_INFO fixes the rendering in KDE. + Alternatively, we need an MI_FLUSH | INHIBIT_RENDER_CACHE_FLUSH between + composites. (Note that it is not stale cache data causing the rendering + corruption and that a pipelined flush is not sufficient either.) Also, + having tried varies points at which to flush, the only place where the + flush is effective seems to be between composite operations - that is a + flush after 2D is not sufficient. + + Reported-by: Vasily Khoruzhick <anars...@gmail.com> + Reported-by: Clemens Eisserer <linuxhi...@gmail.com> + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit a25573d5c47ebea34c076075e1993233d7db2b4f +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 15 20:26:19 2010 +0100 + + drmmode: Use the tiled stride for the rotated pixmap. + + After d41684d5459 we now allocate all framebuffers as tiled bo, and so + we must be careful to use the appropriate stride as returned from the + allocation, instead of assuming that it is just an aligned width. + + Fixes: + + Bug 28461 - screen rotation results in corrupted output. + https://bugs.freedesktop.org/show_bug.cgi?id=28461 + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + Reported-by: Till Matthiesen <entr...@everymail.net> + +commit 23ddcf45344936da2931a3bf25bd187a9ea28344 +Merge: 254bcc4 ffc6897 +Author: Julien Cristau <jcris...@debian.org> +Date: Tue Jun 15 17:46:52 2010 +0100 + + Merge commit '2.11.901' + +commit 254bcc40fca6ed9aa0b71f2115c654667f16aec6 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 15 10:24:40 2010 +0100 + + configure: Bump drm requirement to 2.4.21 + + We depend upon the recent introduction of drm_intel_bo_is_reusable(). + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + Reported-by: Julien Cristau <jcris...@debian.org> + +commit ffc689767fa56f2c7710e6f396441c3d8a24ea18 +Author: Carl Worth <cwo...@cworth.org> +Date: Mon Jun 14 17:35:20 2010 -0700 + + Update version to 2.11.901 + + For the 2.12 RC1 snapshot we're making now. + +commit 68c8b3f12482489f2e2e8040fd6728f1a2b9e420 +Author: Carl Worth <cwo...@cworth.org> +Date: Mon Jun 14 17:34:38 2010 -0700 + + NEWS: Add notes for 2.11.901 + + This is the 2.12 RC1 snapshot we're making now. + +commit 8899cd03e2e7ee673e8b3b2a9d2873839cdc1bf8 +Author: Carl Worth <cwo...@cworth.org> +Date: Thu Jun 10 15:38:54 2010 -0700 + + Fix to require libdrm 2.4.19 or newer. + + This is necessary for the drm_intel_bo_emit_reloc_fence function which + did not exist in 2.4.16 which is all we were requiring earlier. + +commit 995a4b2b1d09c31672d9258a8ac732dcf9a8fe9f +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 14 12:15:34 2010 +0100 + + i965: Sanity check ComponentAlpha status in prepare_composite + + Fixes: + + Bug 28446 - Garbled Font with Mathematica 7 + https://bugs.freedesktop.org/show_bug.cgi?id=28446 + + Rewriting the glyphs to render to the destination directly and removing + the more expensive multiple invocations of CompositePicture per picture + was a great performance boost -- except that it needs special handling + in the backend in order to not fallback. Having done so for i915, I + neglected to ensure the sanity checking in i965_prepare_composite() was + sufficient. As it turns out, it was not and so we misrendered CA-glyphs + when rendering directly to the destination. This causes us to fallback + properly, but is a performance regression as we no longer try the 2-pass + magic helper before resorting to s/w. At the moment, I'd rather live + with the temporary regression and fix i965 to do the same magic as i915, + as it critical to fixing the severe performance issues currently + crippling i965, as I believe that this regression only affects the + minority of applications (incorrect, as it turns out, as the glyphs are + overlapping) rendering directly to the destination. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 84d65bace521ad80b9bede4ae9e3e2a8d0668b90 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 14 11:31:40 2010 +0100 + + Compile fix for alternate list.h from xserver-1.9 + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 00a54eee8f29ced610ef9d65b077e64bc65655e9 +Author: Gaetan Nadon <mems...@videotron.ca> +Date: Sat Jun 12 20:24:10 2010 -0400 + + COPYING: replace stub file with actual Copyright notices. + + Signed-off-by: Gaetan Nadon <mems...@videotron.ca> + +commit 94217ed5f5a3726db3fad6cac2132d99ed45c154 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat Jun 12 17:21:44 2010 +0100 + + uxa: Always clip glyphs to destination. + + Even if there is only a single clip rect, since the clip may be smaller + than the drawing rectangle on the destination we need to actually + compute the clipped glyph rectangle. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 5a0a8a1cf6d9b0616d6a097e783f2aa318b45736 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Thu Jun 10 22:56:34 2010 +0100 + + i830: Limit disabling acceleration following EIO to !i965 + + Following a conversation with Owain G. Ainsworth, it was decided that + the second best approach to handling a wedged GPU was to hope that the + kernel could successfully reset it, which currently is only possible for + i965 and later chipsets. + + The best approach is of course to prevent such hangs from ever occurring + in the first place. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 3bf4ca2cdc2493e209bbb9c597bfa17ed7fcf5dc +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 9 12:02:21 2010 +0100 + + i830: Only emit the disabling GPU error message once. + + But emit the warning about rendering corruption every time for the + transient errors like out-of-memory. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 35a12f029005d8f432755fb78f10c9d48ea2f347 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 9 11:47:37 2010 +0100 + + Fallback implementation for trapezoids for hung GPUs. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 8c1a8d22978f143044cc3cd0ff2ade5736ee9d48 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 9 10:03:08 2010 +0100 + + Revert "xp:trapezoids" + + This reverts commit f429fb9d872950705e11171d0e7407fb7673c786. + + An experimental patch I forgot was on my main branch as I was bugfixing. + ARGH! + +commit 994aa1ef571ac2ab05f6588f9068d33b536c7a37 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 9 09:59:36 2010 +0100 + + uxa: Handle all-clipped out case with destination glyphs. + + Fixes the crash reported in: + + Bug 28446 - Garbled Font with Mathematica 7 + https://bugs.freedesktop.org/show_bug.cgi?id=28446 + + pDst=0x3d663c0, src_x=0, src_y=0, xDst=142, yDst=112, nlist=0, + list=0x7fffea026580, glyphs=0x7fffea025d88, extents=0x0) + at uxa-glyphs.c:809 + dx = 0 + y1 = 101 + x2 = 150 + x1 = 142 + dy = 0 + y2 = 112 + rects = 0x5491000 + this_atlas = 0x2456d00 + mask_y = 128 + glyph = 0x35933a0 + mask_x = 736 + priv = 0x39309e0 + screen = 0x8d2cc0 + uxa_screen = 0x2443eb0 + src_pixmap = 0x37c29e0 + dst_pixmap = 0x45ddbf0 + localSrc = 0x361a450 + glyph_atlas = 0x2456d00 + x = 142 + y = 112 + n = 18 + nrect = -9975128 + box = {x1 = 23152, y1 = -5630, x2 = 32767, y2 = 0} + __PRETTY_FUNCTION__ = "uxa_glyphs_to_dst" + + Though the meat of that bug regarding the incorrect remains unsolved. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit f429fb9d872950705e11171d0e7407fb7673c786 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 8 10:24:51 2010 +0100 + + xp:trapezoids + +commit 0776a42b70f2de7b7d7d8804046c79442da1cb8a +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 8 10:43:24 2010 +0100 + + implicit-flush + +commit d41684d54592cf93554a4d6534e7ea74562b1798 +Author: Eric Anholt <e...@anholt.net> +Date: Mon Jun 7 11:18:09 2010 -0700 + + Allocate rotate shadow buffers using the usual framebuffer allocator. + + This means we can get tiling on them, which should significantly boost + performance, and also allow for FBC. + +commit b5c9de10ba3a811f312e622b97ee5e601bd3b74f +Author: Eric Anholt <e...@anholt.net> +Date: Sun Jun 6 23:41:23 2010 -0700 + + Allocate a correctly sized framebuffer when tiling by using libdrm's support. + + When I made libdrm stop overallocating so much memory for the purpose + of bo caching, things started scribbling on the bottom of my + frontbuffer (and vice versa, leading to GPU hangs). We had the usual + mistake of size = tiled_pitch * height instead of size = tiled_pitch * + tile_aligned_height. + +commit e6acbc763229fd5b5b2cc1d65136404d02ac4655 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 18:04:51 2010 +0100 + + uxa: Setup acceleration functions prior to the damage layer + + We need to install the acceleration functions so that they are wrapped + by the Damage layer. This fixes the corruption under a compositing WM + introduced in commit 8700673157fdd3a87ad5150f2f30823261fec519. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + Reported-and-tested-by: Arkadiusz Miśkiewicz <ar...@maven.pl> + +commit 1788b16eb26580624dd3df96ed84f68d40e78ed7 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 15:31:47 2010 +0100 + + i915: Fix typo from previous commit. + + A trivial change, I thought, having tested it before rebasing, unworthy + even of a perfunctory compile test. How wrong I was. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit d9bc36ae03e3c56ab165d24fe4bdc6688fd62b6d +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 15:28:18 2010 +0100 + + i915: Remove screen size limit from video setup. + + The i915 textured video routine know how to handle drawing on an output + larger than the 3D pipe, so allow them to do so. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 6555ef5fd16c9e4fe733caf9e831f29f97462278 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 13:16:34 2010 +0100 + + i915: Replace structure passing with macros for shader generation. + + gcc is horribly bad at collapsing the constants: + + text data bss dec hex filename + 282336 8720 256 291312 471f0 intel_drv.so.old + 269280 8720 256 278256 43ef0 intel_drv.so + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit d56ea7a852d7090360fe080acec268de55ee908d +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 00:20:35 2010 +0100 + + Use the direct dixGevPrivate() API when available + + This is quicker and smaller than the old indirect function call to + dixLookupPrivate(). + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 8700673157fdd3a87ad5150f2f30823261fec519 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon Jun 7 00:16:18 2010 +0100 + + Adapt glyphs for changes in devPrivates API + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 42ddc39430a10513c49a415ddf1a0dc5fa52089e +Author: Keith Packard <kei...@keithp.com> +Date: Fri Apr 30 13:33:54 2010 -0700 + + Adapt to DevPrivate API changes + + This allows the driver to be built against either the old or new + DevPrivate API. + + Signed-off-by: Keith Packard <kei...@keithp.com> + +commit 2c1fda08e889cad07acb452230da06f9c383d21c +Author: Eric Anholt <e...@anholt.net> +Date: Fri Jun 4 16:04:37 2010 -0700 + + Use libc instead of deprecated libc wrappers for malloc/calloc/free. + +commit b586624d4f2908d2a998ba87fe0ae31c10f46b91 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sun Jun 6 17:11:40 2010 +0100 + + uxa: Force fallback for copies. + + All but uxa_copy_window() perform the preliminary checks for whether + acceleration is available. The simplest method for adding the fallback + for uxa_copy_window() seems to be to add it in the core copy function, + so be it. + + This allows X to survive a little longer once we encounter a GPU hang. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 6db1e5231b7a0e79611f771d4efea686f7849e04 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Wed Jun 2 20:43:49 2010 +0100 + + dri: Protect against NULL dereference following GPU hang. + + References: + + Bug 28361 - "glresize" causes server segfault with single buffering. + https://bugs.freedesktop.org/show_bug.cgi?id=28361 + + [ 14528.767] (EE) intel(0): Failed to submit batch buffer, expect rendering corruption or even a frozen display: Input/output error. + [ 14528.767] (EE) intel(0): Disabling acceleration. + [ 14528.788] Backtrace: + [ 14528.858] 0: /usr/bin/X (xorg_backtrace+0x28) [0x491818] + [ 14528.858] 1: /usr/bin/X (0x400000+0x65ca9) [0x465ca9] + [ 14528.858] 2: /lib/libpthread.so.0 (0x7f9df2dc9000+0xedf0) [0x7f9df2dd7df0] + [ 14528.858] 3: /usr/local/lib/libdrm_intel.so.1 (drm_intel_bo_flink+0x0) [0x7f9defd60c60] + [ 14528.858] 4: /usr/local/lib/xorg/modules/drivers/intel_drv.so (0x7f9deff6a000+0x2fdfd) [0x7f9deff99dfd] + [ 14528.858] 5: /usr/lib/xorg/modules/extensions/libdri2.so (0x7f9df01b8000+0x19e7) [0x7f9df01b99e7] + [ 14528.858] 6: /usr/lib/xorg/modules/extensions/libdri2.so (0x7f9df01b8000+0x1fdb) [0x7f9df01b9fdb] + [ 14528.858] 7: /usr/lib/xorg/modules/extensions/libdri2.so (DRI2GetBuffersWithFormat+0x10) [0x7f9df01ba250] + [ 14528.858] 8: /usr/lib/xorg/modules/extensions/libdri2.so (0x7f9df01b8000+0x3834) [0x7f9df01bb834] + [ 14528.858] 9: /usr/bin/X (0x400000+0x2fc2c) [0x42fc2c] + [ 14528.858] 10: /usr/bin/X (0x400000+0x24da5) [0x424da5] + [ 14528.858] 11: /lib/libc.so.6 (__libc_start_main+0xe6) [0x7f9df1d60a26] + [ 14528.858] 12: /usr/bin/X (0x400000+0x24959) [0x424959] + [ 14528.858] Segmentation fault at address 0x20 + [ 14528.858] Fatal server error: + [ 14528.858] Caught signal 11 (Segmentation fault). Server aborting + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 2989f51caf3134460c2551de597e7e54fe74ee92 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 1 23:08:02 2010 +0100 + + i830: Remove unused coord-adjust. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit dc402334f4e9b0de624bc89cd77eae4ec7cf1708 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 1 23:03:19 2010 +0100 + + i915: Centre sampling. + + Use centre sampling of textures to match pixman, and remove numerous + off-by-one and visual artefacts when rendering. The classic example for + this is cairo/text/xcomposite-projection where the edge of the rotated + rectangle is jaggy due to the incorrect sample position. + + Fixes: + + Bug 16917 - [i915] Blur on y-axis also when only x-axis is scaled + billiear + https://bugs.freedesktop.org/show_bug.cgi?id=16917 + + And about 15 tests from the Cairo test suite. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit f74b3f82bab11463a0f4de9f614fc6aa1492ef24 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Tue Jun 1 22:31:35 2010 +0100 + + i915; Avoid the implicit flush on changing BUF_INFO + + 3DSTATE_BUF_INFO is an implicit flush of the piepline, so avoid emitting + that and associated state unless the destination pixmap has actually + changed. This is a win of around 3-5% for cairo-perf-trace, notably for + firefox. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit f2272402035574c206a0e3383c55373c440fd928 +Author: Jesse Barnes <jbar...@virtuousgeek.org> +Date: Tue Jun 1 13:46:15 2010 -0700 + + DRI2: fix new buffer exchange check + + Chris's new buffer exchange check is a good one, but we don't want to + hit the immediate blit fallback path if it fails. We still want to + schedule a blit for sometime in the future, and we need to use it + wherever an exchange might occur (like the secondary flip check or the + currently disabled CanExchange check). + + Fixes https://bugs.freedesktop.org/show_bug.cgi?id=28252. + + Signed-off-by: Jesse Barnes <jbar...@virtuousgeek.org> + +commit a386a003e7b0ff7100434dccd51fedd822454a6c +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon May 31 22:18:43 2010 +0100 + + uxa: Spans, try again to get the early break correct. + + Trigger happy bug fixing. The sign *was* right, the endpoint was wrong. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 1672ee0421a99b745d65d72a3818de01d8100b6b +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon May 31 22:08:43 2010 +0100 + + uxa: Sign reversal on early break from spans passing the YXband + + Introduced with e5c971e7639095d38da3518a5dc404b708d45cfb. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit cd38b705be84901a38380dc2a1b90889b553d565 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon May 31 17:23:36 2010 +0100 + + Disable acceleration if we detect a hardware error. + + This is wildly optimistic, but it should work in a surprising number of + error situations and some output in those cases will be hopefully be + better than none... + + If we submit a batchbuffer and the kernel reports the GPU is hung (which + will be caused by an earlier execbuffer, and so the kernel should have + had enough time to determine whether or not it could reset the GPU) then + disable any further attempt to accelerate gfx and force fallbacks to map + the buffers and use the CPU. We cannot normally map any more buffers if + the GPU is hung, so only those already mapped prior to the hang can be + written to, or those allocated in system memory. However, we can expect + that the framebuffer is already mapped, and so have a reasonable + expectation to continue to see the display update. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 5fff430046db2030f89e49beb66c6476dc3fcd4c +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat May 29 17:35:00 2010 +0100 + + uxa: Mega-Glyphs! + + Rewrite glyph rendering to avoid the intermediate buffer, accumulating + the glyph rectangles directly in the backend composite routines. And + modify the glyph cache routines to fully utilise the allocated size of + the tiled buffer on older hardware. To do this we alias all glyph sizes + into the same texture using a technique suggested by Keith Packard. + + PineView: + 885/856-> 1150/1110 kglyph/s (aa/rgb) + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit d31abccd41c417338aac7c681e8bc6bd187b1843 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Mon May 31 12:14:23 2010 +0100 + + i915: Support textured video on an extended desktop. + + Handle rendering textured video onto an extended desktop (>2048) by + using a temporary pixmap. Note that we still cannot handle rendering to + a greater than 2048 destination region, for that we will need to tile. + Hmm, time to request a 2560x1600, 10bpc monitor... + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 2cfd5bc134f0dd86ea714594d61f6d5eb29019ce +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat May 29 17:55:19 2010 +0100 + + dri: Compilation fix. + + 17:53 < arekm> ickle: i830_dri.c:630:28: error: ‘DrawableRec’ has no member named ‘bpp’ + 17:53 < arekm> ickle: i830_dri.c:630:57: error: ‘DrawableRec’ has no member named ‘bpp’ + + * sigh. I need to fix this machine to have the right version of the + * headers. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit e2615cdeef078dbd2e834b68c437f098a92b941d +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat May 29 16:37:12 2010 +0100 + + dri: Only flip if the front and back pixmaps match. + + An unredirected window (thanks Michel for the reminder) is backed by the + Screen pixmap, and so uses a reference of that as its front buffer. The + back buffer is a pixmap appropriately sized for the drawable. When the + application requests to swap its buffers, obviously we cannot simply + exchange the front and back buffer as they do not match, but need to copy + the appropriate region from the back to the front. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 8b2039187fc23f5e9dddf4081f8b1ab6f4c01416 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat May 29 12:14:55 2010 +0100 + + Revert "dri: Use size from backing pixmap when creating buffers." + + This reverts commit 44d45d3fa56f121ce89ffe5b28beb48be01a95df. + + Michel Dänzer pointed out the flaw in using the pixmap size instead of + the drawable size: + + Using the backing pixmap dimensions for this is not desirable. In + particular, it means that the DRI2 buffers of non-redirected windows + always have the same size as the screen. But even for redirected windows + it wastes some graphics memory with a re-parenting window manager, that + is if it doesn't break in various ways due to the top left corner of the + DRI2 buffers no longer corresponding to the top left corner of the window. + +commit 44d45d3fa56f121ce89ffe5b28beb48be01a95df +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Sat May 29 10:39:28 2010 +0100 + + dri: Use size from backing pixmap when creating buffers. + + This avoid using the garbage values stored in the Screen drawable, + instead of the true values which are only maintained in its backing + pixmap. The consequence of using the wrong size was to hand a 1x1 + pixmap to metacity/mutter and have it believe it was a full screen + drawable; GPU hangs ensued if using page flipping. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 90c74a43149ec72bef64fb7e64b812294bda69a5 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Fri May 28 21:49:38 2010 +0100 + + i915: Don't re-emit vertex size unless it has changed. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit a94ae175d6a69243a4465de0be0a8a3368e0ab28 +Author: Eric Anholt <e...@anholt.net> +Date: Fri May 28 12:40:02 2010 -0700 + + uxa: Fix prepare_solid being called without check_solid first. + + Fixes GPU hang on gen6. + +commit 66c90158e45e890c6f655195c6707d216c7ac4c5 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Fri May 28 17:13:30 2010 +0100 + + uxa: Skip the redundant miComputeCompositeRects() when adding to the mask + + As we are in full control of the destination (the temporary glyph mask) + and the source (the glyph cache) we know that there are no clip regions + on either and so can skip computing the composite rectangles. (We trust + the device clipping to prevent compositing outside the target.) + + x11perf on PineView: + 701/686 -> 881/856 kglyphs/s [aa/rgb] + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 5b2254838eb89bf77eeb893c73eecb8c737822f4 +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Fri May 28 12:47:26 2010 +0100 + + uxa: Make the glyph caches' fixed size explicit. + + Until we actual resize the glyph cache dynamically, make it obvious to + the reader and the compiler that the size is fixed. + + Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> + +commit 11581dda99cb2e4ae78fc73be4b02185b3be58ed +Author: Chris Wilson <ch...@chris-wilson.co.uk> +Date: Fri May 28 11:38:05 2010 +0100 -- 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/e1oshek-0003et...@alioth.debian.org