diff options
author | Mario Kleiner <mario.kleiner.de@gmail.com> | 2014-08-28 03:49:55 +0200 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2014-09-01 08:50:41 +1000 |
commit | 6d49f3f7aaaec872b6f9841f744a0bf09cc98492 (patch) | |
tree | 585de10f9783a2c1315cbaca2f672c52957d4312 | |
parent | 10729a442be3cf018c5806c95ec4218977917ef3 (diff) |
dri2: Set default SwapLimit to 1 for double-buffering.
This used to be 2 for pseudo-triplebuffering on XOrg 1.12+.
However, it caused problems like unthrottled swapping
at up to twice the video refresh rate for redirected
windows under desktop composition, which can't be easily
fixed under dri2.
Default to double-buffering. Users can override this, but
dri3 provides better solutions for this.
Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | man/nouveau.man | 2 | ||||
-rw-r--r-- | src/nv_driver.c | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/man/nouveau.man b/man/nouveau.man index 0bf6e1e..129bb7f 100644 --- a/man/nouveau.man +++ b/man/nouveau.man @@ -124,7 +124,7 @@ OpenML OML_sync_control specification and will cause failure of software that relies on correct presentation timing behaviour as defined in that specification. .br -Default: 2 for XOrg 1.12+, 1 for older servers. +Default: 1. .SH "SEE ALSO" __xservername__(__appmansuffix__), __xconfigfile__(__filemansuffix__), Xserver(__appmansuffix__), X(__miscmansuffix__) .SH AUTHORS diff --git a/src/nv_driver.c b/src/nv_driver.c index 6045095..4bad985 100644 --- a/src/nv_driver.c +++ b/src/nv_driver.c @@ -1138,10 +1138,10 @@ NVPreInit(ScrnInfoPtr pScrn, int flags) reason = ": Caution: Use of this swap limit > 1 violates OML_sync_control spec on this X-Server!\n"; } } else { - /* Driver default: Double buffering on old servers, triple-buffering - * on Xorg 1.12+. + /* Always default to double-buffering, because it avoids artifacts like + * unthrottled rendering of non-fullscreen clients under desktop composition. */ - pNv->swap_limit = (DRI2INFOREC_VERSION < 6) ? 1 : 2; + pNv->swap_limit = 1; reason = ""; from = X_DEFAULT; } |