modesetting: Call glamor_finish from drmmode_crtc_set_mode
This makes sure any pending drawing to a new scanout buffer will be
visible from the start.
This makes the finish call in drmmode_copy_fb superfluous, so remove it.
Reviewed-by: Adam Jackson <ajax@redhat.com>
(Cherry picked from commit c66c548eab)
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
			
			
This commit is contained in:
		
							parent
							
								
									255d8c3c36
								
							
						
					
					
						commit
						b50175fe86
					
				| 
						 | 
				
			
			@ -754,6 +754,7 @@ drmmode_crtc_set_mode(xf86CrtcPtr crtc, Bool test_only)
 | 
			
		|||
    xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
 | 
			
		||||
    drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private;
 | 
			
		||||
    drmmode_ptr drmmode = drmmode_crtc->drmmode;
 | 
			
		||||
    ScreenPtr screen = crtc->scrn->pScreen;
 | 
			
		||||
    drmModeModeInfo kmode;
 | 
			
		||||
    int output_count = 0;
 | 
			
		||||
    uint32_t *output_ids = NULL;
 | 
			
		||||
| 
						 | 
				
			
			@ -764,6 +765,12 @@ drmmode_crtc_set_mode(xf86CrtcPtr crtc, Bool test_only)
 | 
			
		|||
    if (!drmmode_crtc_get_fb_id(crtc, &fb_id, &x, &y))
 | 
			
		||||
        return 1;
 | 
			
		||||
 | 
			
		||||
#ifdef GLAMOR_HAS_GBM
 | 
			
		||||
    /* Make sure any pending drawing will be visible in a new scanout buffer */
 | 
			
		||||
    if (drmmode->glamor)
 | 
			
		||||
        glamor_finish(screen);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
    if (ms->atomic_modeset) {
 | 
			
		||||
        drmModeAtomicReq *req = drmModeAtomicAlloc();
 | 
			
		||||
        Bool active;
 | 
			
		||||
| 
						 | 
				
			
			@ -1452,8 +1459,6 @@ drmmode_copy_fb(ScrnInfoPtr pScrn, drmmode_ptr drmmode)
 | 
			
		|||
 | 
			
		||||
    FreeScratchGC(gc);
 | 
			
		||||
 | 
			
		||||
    glamor_finish(pScreen);
 | 
			
		||||
 | 
			
		||||
    pScreen->canDoBGNoneRoot = TRUE;
 | 
			
		||||
 | 
			
		||||
    if (drmmode->fbcon_pixmap)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue