--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
-@@ -1800,7 +1800,8 @@
+@@ -1800,7 +1800,8 @@ xf86RandR14ProviderSetOutputSource(Scree
ScreenPtr cmScreen = pScreen->current_master;
xf86DetachOutputGPU(pScreen);
}
provider->output_source = NULL;
return TRUE;
-@@ -1811,7 +1812,8 @@
+@@ -1811,7 +1812,8 @@ xf86RandR14ProviderSetOutputSource(Scree
SetRootClip(source_provider->pScreen, FALSE);
AttachOutputGPU(source_provider->pScreen, pScreen);
provider->output_source = source_provider;
-@@ -1828,7 +1830,8 @@
+@@ -1828,7 +1830,8 @@ xf86RandR14ProviderSetOffloadSink(Screen
if (provider->offload_sink) {
ScreenPtr cmScreen = pScreen->current_master;
xf86DetachOutputGPU(pScreen);
}
provider->offload_sink = NULL;
-@@ -1838,7 +1841,8 @@
+@@ -1838,7 +1841,8 @@ xf86RandR14ProviderSetOffloadSink(Screen
if (provider->offload_sink == sink_provider)
return TRUE;
AttachOffloadGPU(sink_provider->pScreen, pScreen);
provider->offload_sink = sink_provider;
-@@ -1917,12 +1921,14 @@
+@@ -1917,12 +1921,14 @@ xf86RandR14ProviderDestroy(ScreenPtr scr
config->randr_provider->offload_sink = NULL;
RRSetChanged(screen);
}
config->randr_provider = NULL;
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
-@@ -3911,6 +3911,8 @@ AttachUnboundGPU(ScreenPtr pScreen, ScreenPtr new)
+@@ -3911,6 +3911,8 @@ AttachUnboundGPU(ScreenPtr pScreen, Scre
assert(new->isGPU);
assert(!new->current_master);
xorg_list_add(&new->unattached_head, &pScreen->unattached_list);
new->current_master = pScreen;
}
-@@ -3937,7 +3937,8 @@
+@@ -3935,7 +3937,8 @@ DetachOutputGPU(ScreenPtr slave)
{
assert(slave->isGPU);
xorg_list_del(&slave->output_head);
}
void
-@@ -3953,6 +3954,7 @@
+@@ -3951,6 +3954,7 @@ DetachOffloadGPU(ScreenPtr slave)
{
assert(slave->isGPU);
xorg_list_del(&slave->offload_head);