diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2017-10-19 18:57:45 +0200 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2017-10-20 10:28:37 +0200 |
commit | b93ae9b159790e8a979e9d5d567a0e6fccd7d08a (patch) | |
tree | 0354b517ab7f97e94f71c924001739496e854411 /src | |
parent | 61113768bd79ec5c2164835e2e048e8f2a42ce9a (diff) |
Unreference pixmap's FB with EXA as well in radeon_set_pixmap_bo
Not doing so resulted in DRI2 page flips not actually changing the FB
being scanned out, showing intermittent flicker of the "back" buffer
rendering.
Bugzilla: https://bugs.freedesktop.org/102643
Fixes: 55e513b978b2 "Use reference counting for tracking KMS framebuffer
lifetimes"
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/radeon.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/radeon.h b/src/radeon.h index 81b04ae2..d54e4990 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -769,6 +769,8 @@ static inline Bool radeon_set_pixmap_bo(PixmapPtr pPix, struct radeon_bo *bo) if (driver_priv->bo) radeon_bo_unref(driver_priv->bo); + drmmode_fb_reference(pRADEONEnt->fd, &driver_priv->fb, NULL); + radeon_bo_ref(bo); driver_priv->bo = bo; |