[Bug 93125] Rendering artifacts in SNA for small regions
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Nov 26 08:00:50 PST 2015
https://bugs.freedesktop.org/show_bug.cgi?id=93125
--- Comment #1 from Chris Wilson <chris at chris-wilson.co.uk> ---
That's quite peculiar. The blitter should be quite capable and is well used...
diff --git a/src/sna/gen7_render.c b/src/sna/gen7_render.c
index 1c420a7..e896816 100644
--- a/src/sna/gen7_render.c
+++ b/src/sna/gen7_render.c
@@ -54,7 +54,7 @@
#define NO_COMPOSITE 0
#define NO_COMPOSITE_SPANS 0
#define NO_COPY 0
-#define NO_COPY_BOXES 0
+#define NO_COPY_BOXES 1
#define NO_FILL 0
#define NO_FILL_BOXES 0
#define NO_FILL_ONE 0
Will force all of these paths through the blitter. Would also be good to check
with Option "AccelMethod" "blt". If you could undo the small_copy() one by one
to identify the path that fails, that would also be useful. Once you have that,
adding
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 3341851..1dccc65 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -1087,8 +1087,12 @@ sna_pixmap_create_scratch(ScreenPtr screen,
static unsigned small_copy(const RegionRec *region)
{
- if ((region->extents.x2 - region->extents.x1)*(region->extents.y2 -
regi
+ if ((region->extents.x2 - region->extents.x1)*(region->extents.y2 -
regi
+ DBG(("%s: region:%dx%d\n", __FUNCTION__,
+ (region->extents.x2 - region->extents.x1),
+ (region->extents.y2 - region->extents.y1));
return COPY_SMALL;
+ }
return 0;
}
and recompiling with ./configure --enable-debug=full will generate a huge log
file that I would hopefully be able to find the bug.
--
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20151126/fe34b08d/attachment-0001.html>
More information about the intel-gfx-bugs
mailing list