From: Michel Dänzer <michel.daenzer@xxxxxxx> We were leaking drmmode_crtc->scanout_damage, which caused trouble on server reset. Fixes server reset with active separate scanout pixmaps. (Cherry picked from radeon commit 0c29deb5a97d9a57e994cc0053c49ddf7aca6ecb) Signed-off-by: Michel Dänzer <michel.daenzer at amd.com> --- src/drmmode_display.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/drmmode_display.c b/src/drmmode_display.c index 40439dd2b..406b5eed6 100644 --- a/src/drmmode_display.c +++ b/src/drmmode_display.c @@ -2415,13 +2415,8 @@ void drmmode_fini(ScrnInfoPtr pScrn, drmmode_ptr drmmode) #endif } - for (c = 0; c < config->num_crtc; c++) { - xf86CrtcPtr crtc = config->crtc[c]; - drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private; - - drmmode_crtc_scanout_destroy(&info->drmmode, &drmmode_crtc->scanout[0]); - drmmode_crtc_scanout_destroy(&info->drmmode, &drmmode_crtc->scanout[1]); - } + for (c = 0; c < config->num_crtc; c++) + drmmode_crtc_scanout_free(config->crtc[c]->driver_private); } void drmmode_set_cursor(ScrnInfoPtr scrn, drmmode_ptr drmmode, int id, -- 2.11.0