xf86-video-intel: 3 commits - src/sna/sna_display.c src/sna/sna_render.c src/sna/sna_trapezoids.c
Chris Wilson
ickle at kemper.freedesktop.org
Sun Nov 11 03:07:11 PST 2012
src/sna/sna_display.c | 2 ++
src/sna/sna_render.c | 10 ++++++----
src/sna/sna_trapezoids.c | 4 ++--
3 files changed, 10 insertions(+), 6 deletions(-)
New commits:
commit b16219a19f48b52dda91f26fcbbbbeda056589ab
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Sun Nov 11 11:05:35 2012 +0000
sna: Filter out the full-damage marker when undoing redirection
==25902== Invalid read of size 4
==25902== at 0x4980E13: _list_del (intel_list.h:218)
==25902== by 0x4980EAB: list_del (intel_list.h:240)
==25902== by 0x4981F4B: free_list (sna_damage.c:403)
==25902== by 0x4985131: __sna_damage_destroy (sna_damage.c:1467)
==25902== by 0x49A5276: sna_render_composite_redirect_done (sna_render.c:1921)
==25902== by 0x49C68FC: gen2_render_composite_done (gen2_render.c:1136)
==25902== by 0x497F90F: sna_composite (sna_composite.c:567)
==25902== by 0x4994725: glyphs_via_mask (sna_glyphs.c:1139)
==25902== by 0x4995FB7: sna_glyphs (sna_glyphs.c:1688)
==25902== by 0x8150EB4: ??? (in /usr/bin/Xorg)
==25902== by 0x813CA38: CompositeGlyphs (in /usr/bin/Xorg)
==25902== by 0x8146DE1: ??? (in /usr/bin/Xorg)
==25902== Address 0x7c079ac2 is not stack'd, malloc'd or (recently) free'd
Reported-by: bonbons67 at internet.lu
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56785
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_render.c b/src/sna/sna_render.c
index 3cb1449..34c795b 100644
--- a/src/sna/sna_render.c
+++ b/src/sna/sna_render.c
@@ -1914,11 +1914,13 @@ sna_render_composite_redirect_done(struct sna *sna,
assert(ok);
}
if (t->damage) {
- DBG(("%s: combining damage, offset=(%d, %d)\n",
- __FUNCTION__, t->box.x1, t->box.y1));
- sna_damage_combine(t->real_damage, t->damage,
+ DBG(("%s: combining damage (all? %d), offset=(%d, %d)\n",
+ __FUNCTION__, DAMAGE_IS_ALL(t->damage),
+ t->box.x1, t->box.y1));
+ sna_damage_combine(t->real_damage,
+ DAMAGE_PTR(t->damage),
t->box.x1, t->box.y1);
- __sna_damage_destroy(t->damage);
+ __sna_damage_destroy(DAMAGE_PTR(t->damage));
}
kgem_bo_destroy(&sna->kgem, op->dst.bo);
commit 69acbb77e8aad3370d5e8d9a9e067c54872d7082
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Sun Nov 11 10:49:59 2012 +0000
sna: Fix printing of uninitialied value in DBG
==25902== Use of uninitialised value of size 4
==25902== at 0x423098E: _itoa_word (_itoa.c:196)
==25902== by 0x4233F7F: vfprintf (vfprintf.c:1602)
==25902== by 0x42FAFAD: __vsnprintf_chk (vsnprintf_chk.c:65)
==25902== by 0x81DBE8E: Xvscnprintf (in /usr/bin/Xorg)
==25902== by 0x81DC8FB: LogVMessageVerb (in /usr/bin/Xorg)
==25902== by 0x81DCA62: LogVWrite (in /usr/bin/Xorg)
==25902== by 0x81DCA9B: VErrorF (in /usr/bin/Xorg)
==25902== by 0x81DC333: ErrorF (in /usr/bin/Xorg)
==25902== by 0x49B2FA8: trapezoid_span_inplace__x8r8g8b8 (sna_trapezoids.c:5069)
==25902== by 0x49B3407: trapezoid_span_inplace (sna_trapezoids.c:5166)
==25902== by 0x49B4C96: sna_composite_trapezoids (sna_trapezoids.c:5619)
Reported-by: bonbons67 at internet.lu
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56785
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_trapezoids.c b/src/sna/sna_trapezoids.c
index 008ba2e..8f2ea34 100644
--- a/src/sna/sna_trapezoids.c
+++ b/src/sna/sna_trapezoids.c
@@ -5066,8 +5066,8 @@ trapezoid_span_inplace__x8r8g8b8(CARD8 op,
pixmap = get_drawable_pixmap(dst->pDrawable);
get_drawable_deltas(dst->pDrawable, pixmap, &dst_x, &dst_y);
- DBG(("%s: format=%x, op=%d, color=%x\n",
- __FUNCTION__, dst->format, op, color));
+ DBG(("%s: format=%x, op=%d, lerp?=%d\n",
+ __FUNCTION__, dst->format, op, lerp));
if (lerp) {
struct inplace inplace;
commit 66e4c8ff40ab8cf722efa4293bb17b0d8f2dfa88
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Sun Nov 11 09:40:09 2012 +0000
sna: Flush pending rendering before enabling an output
This is to prevent falling in the trap of the rendering being delayed
until the next client renders some new content.
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index 87acb5d..d384bb2 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -1251,6 +1251,8 @@ retry: /* Attach per-crtc pixmap or direct */
if (bo == NULL)
return FALSE;
+ kgem_bo_submit(&sna->kgem, bo);
+
sna_crtc->bo = bo;
mode_to_kmode(&sna_crtc->kmode, mode);
if (!sna_crtc_apply(crtc)) {
More information about the xorg-commit
mailing list