summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2016-08-01 18:11:57 +0900
committerMichel Dänzer <michel@daenzer.net>2016-11-22 16:25:48 +0900
commit13c6bc5e382765fe567091e1c616c0a26eec04ca (patch)
tree99857507841bc48b999634cb5a58798c03bafda9
parentf11531c99fcd6473f58b4d10efaf3efd84304d8e (diff)
Don't install Flush/EventCallback for GPU screens
Their purpose is to flush GPU rendering commands corresponding to damage events, but there can be no damage events corresponding to GPU screen rendering operations. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--src/radeon_kms.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/radeon_kms.c b/src/radeon_kms.c
index 2f783a02..a5943d1c 100644
--- a/src/radeon_kms.c
+++ b/src/radeon_kms.c
@@ -302,7 +302,7 @@ radeon_flush_callback(CallbackListPtr *list,
static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen)
{
- ExtensionEntry *damage_ext = CheckExtension("DAMAGE");
+ ExtensionEntry *damage_ext;
ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
RADEONInfoPtr info = RADEONPTR(pScrn);
PixmapPtr pixmap;
@@ -360,7 +360,7 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen)
radeon_glamor_create_screen_resources(pScreen);
info->callback_event_type = -1;
- if (damage_ext) {
+ if (!pScreen->isGPU && (damage_ext = CheckExtension("DAMAGE"))) {
info->callback_event_type = damage_ext->eventBase + XDamageNotify;
if (!AddCallback(&FlushCallback, radeon_flush_callback, pScrn))