xf86-video-intel: 3 commits - man/intel.man src/sna/sna_accel.c
Chris Wilson
ickle at kemper.freedesktop.org
Wed Oct 23 23:35:20 PDT 2013
man/intel.man | 10 ++++++++++
src/sna/sna_accel.c | 16 ++++++++++++++--
2 files changed, 24 insertions(+), 2 deletions(-)
New commits:
commit 638d4f60285709b6efc04cef72d4b530460e3239
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Tue Oct 22 14:22:14 2013 +0100
sna: Remove the move-to-gpu shortcircuiting for partial GPU, no CPU damage
Otherwise we may not correctly undo COW or pending move-to-gpu updates.
v2: goto move_to_gpu instead for correcting the damage handling.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70821
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 4edfc13..a1de360 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -3419,8 +3419,7 @@ create_gpu_bo:
} else {
DBG(("%s: partial GPU damage with no CPU damage, continuing to use GPU\n",
__FUNCTION__));
- priv->cpu = false;
- goto done;
+ goto move_to_gpu;
}
}
commit e685e100705c1a5f4ef84b2bc355aa6b6ed0ab18
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Thu Oct 24 07:28:18 2013 +0100
Revert "sna: Remove the move-to-gpu shortcircuiting for partial GPU, no CPU damage"
This reverts commit bccbbf8a68faf7aac274efd289d4916083b1a1e3.
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 497e0d1..4edfc13 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -3408,8 +3408,21 @@ create_gpu_bo:
if (priv->gpu_damage) {
assert(priv->gpu_bo);
- if (!priv->cpu_damage)
- goto use_gpu_bo;
+ if (!priv->cpu_damage) {
+ if (sna_damage_contains_box__no_reduce(priv->gpu_damage,
+ ®ion.extents)) {
+ DBG(("%s: region wholly contained within GPU damage\n",
+ __FUNCTION__));
+ assert(sna_damage_contains_box(priv->gpu_damage, ®ion.extents) == PIXMAN_REGION_IN);
+ assert(sna_damage_contains_box(priv->cpu_damage, ®ion.extents) == PIXMAN_REGION_OUT);
+ goto use_gpu_bo;
+ } else {
+ DBG(("%s: partial GPU damage with no CPU damage, continuing to use GPU\n",
+ __FUNCTION__));
+ priv->cpu = false;
+ goto done;
+ }
+ }
ret = sna_damage_contains_box(priv->gpu_damage, ®ion.extents);
if (ret == PIXMAN_REGION_IN) {
commit bd20791e8e4a9b8aa8e8dfe1cc76e91a471f5c67
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Oct 23 16:15:35 2013 +0100
man: Describe the TearFree option
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/man/intel.man b/man/intel.man
index cd217b1..d1ec01c 100644
--- a/man/intel.man
+++ b/man/intel.man
@@ -134,6 +134,16 @@ disable render acceleration and only use the BLT engine.
.IP
Default: use UXA (render acceleration)
.TP
+.BI "Option \*qTearFree\*q \*q" boolean \*q
+Disable or enable TearFree updates. This option forces X to perform all
+rendering to a backbuffer prior to updating the actual display. That update
+is then performed synchronously with the vertical refresh of the display so
+that the entire update is complete before the display starts its refresh.
+That is only one frame is ever visible, preventing an unsightly tear between
+two visible differing frames.
+.IP
+Default: TearFree is disabled.
+.TP
.BI "Option \*qReprobeOutputs\*q \*q" boolean \*q
Disable or enable rediscovery of connected displays during server startup.
As the kernel driver loads it scans for connected displays and configures a
More information about the xorg-commit
mailing list