present: fail flipping if we have any slave outputs
Due to the way present currently works, we don't ever check with the
secondary adapters if we can flip at all.
We shouldn't flip if the secondary adapters are attached to the pixmap
currently, however using the current check_flip callback isn't possible
as it passes the Window to the driver (something we shouldn't be doing),
so the slave driver can never get it's own screen ptr back.
For now to fix the problem just block flips if we have any slaves
configured. We can fix the ABI up later, but this fix can be backported
to stable.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
(cherry picked from commit 47bc7fcaa5
)
This commit is contained in:
parent
3e480c6f51
commit
643359fb03
|
@ -144,6 +144,10 @@ present_check_flip(RRCrtcPtr crtc,
|
|||
if (!screen_priv->info->flip)
|
||||
return FALSE;
|
||||
|
||||
/* Fail to flip if we have slave outputs */
|
||||
if (!xorg_list_is_empty(&screen->output_slave_list))
|
||||
return FALSE;
|
||||
|
||||
/* Make sure the window hasn't been redirected with Composite */
|
||||
window_pixmap = screen->GetWindowPixmap(window);
|
||||
if (window_pixmap != screen->GetScreenPixmap(screen) &&
|
||||
|
|
Loading…
Reference in New Issue
Block a user