diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-08-01 18:11:57 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-11-22 16:25:48 +0900 |
commit | 13c6bc5e382765fe567091e1c616c0a26eec04ca (patch) | |
tree | 99857507841bc48b999634cb5a58798c03bafda9 /src | |
parent | f11531c99fcd6473f58b4d10efaf3efd84304d8e (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>
Diffstat (limited to 'src')
-rw-r--r-- | src/radeon_kms.c | 4 |
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)) |