diff --git a/SOURCES/0001-clutter-stage-view-Hide-double-buffered-shadowfb-beh.patch b/SOURCES/0001-clutter-stage-view-Hide-double-buffered-shadowfb-beh.patch
new file mode 100644
index 0000000..6d9cffd
--- /dev/null
+++ b/SOURCES/0001-clutter-stage-view-Hide-double-buffered-shadowfb-beh.patch
@@ -0,0 +1,46 @@
+From 7bcc274dbc6cb75814cce3e5c2e7f45cf25b0538 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
+Date: Tue, 9 Feb 2021 17:59:08 +0100
+Subject: [PATCH 1/2] clutter/stage-view: Hide double buffered shadowfb behind
+ envvar
+
+It still results in worse performance than a single FBO based shadowfb,
+so don't use it. It will need a new EGL extension for zero copy CPU
+memory based FBO to be feasable.
+---
+ clutter/clutter/clutter-stage-view.c | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/clutter/clutter/clutter-stage-view.c b/clutter/clutter/clutter-stage-view.c
+index 5e5966d06..ec18db7b8 100644
+--- a/clutter/clutter/clutter-stage-view.c
++++ b/clutter/clutter/clutter-stage-view.c
+@@ -282,6 +282,14 @@ init_dma_buf_shadowfbs (ClutterStageView  *view,
+   CoglRenderer *cogl_renderer = cogl_context_get_renderer (cogl_context);
+   CoglFramebuffer *initial_shadowfb;
+ 
++  if (g_strcmp0 (g_getenv ("MUTTER_DEBUG_ENABLE_DOUBLE_BUFFER_SHADOWFB"),
++                 "1") != 0)
++    {
++      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
++                   "Double buffered shadowfb not enabled");
++      return FALSE;
++    }
++
+   if (!cogl_clutter_winsys_has_feature (COGL_WINSYS_FEATURE_BUFFER_AGE))
+     {
+       g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_SUPPORTED,
+@@ -390,8 +398,8 @@ init_shadowfb (ClutterStageView *view)
+       return;
+     }
+ 
+-  g_warning ("Failed to initialize double buffered shadow fb for %s: %s",
+-             priv->name, error->message);
++  g_debug ("Failed to initialize double buffered shadow fb for %s: %s",
++           priv->name, error->message);
+   g_clear_error (&error);
+ 
+   if (!init_fallback_shadowfb (view, cogl_context, width, height, &error))
+-- 
+2.29.2
+
diff --git a/SOURCES/0002-cogl-gpu-info-Fix-software-acceleration-detection.patch b/SOURCES/0002-cogl-gpu-info-Fix-software-acceleration-detection.patch
new file mode 100644
index 0000000..106ebaa
--- /dev/null
+++ b/SOURCES/0002-cogl-gpu-info-Fix-software-acceleration-detection.patch
@@ -0,0 +1,27 @@
+From 03c30b76bae4c2e3f51a6689ebb7c0c60bd7b29a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
+Date: Tue, 9 Feb 2021 18:00:26 +0100
+Subject: [PATCH 2/2] cogl/gpu-info: Fix software acceleration detection
+
+The string used to match mesa changed; update to fix software rendering
+detection.
+---
+ cogl/cogl/cogl-gpu-info.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cogl/cogl/cogl-gpu-info.c b/cogl/cogl/cogl-gpu-info.c
+index f44319e96..c1817b3b0 100644
+--- a/cogl/cogl/cogl-gpu-info.c
++++ b/cogl/cogl/cogl-gpu-info.c
+@@ -192,6 +192,8 @@ check_mesa_vendor (const CoglGpuInfoStrings *strings)
+     return TRUE;
+   else if (strcmp (strings->vendor_string, "Mesa Project") == 0)
+     return TRUE;
++  else if (strcmp (strings->vendor_string, "Mesa/X.org") == 0)
++    return TRUE;
+ 
+   return FALSE;
+ }
+-- 
+2.29.2
+
diff --git a/SPECS/mutter.spec b/SPECS/mutter.spec
index d74c2b8..45e87b0 100644
--- a/SPECS/mutter.spec
+++ b/SPECS/mutter.spec
@@ -8,7 +8,7 @@
 
 Name:          mutter
 Version:       3.32.2
-Release:       54%{?dist}
+Release:       55%{?dist}
 Summary:       Window and compositing manager based on Clutter
 
 License:       GPLv2+
@@ -172,6 +172,11 @@ Patch507: 0002-xwayland-Make-sure-tmp-.X11-unix-exists.patch
 # Mitigate nouveau misidentifying connectors (#1786496)
 Patch508: 0001-monitor-config-manager-Handle-multiple-builtin-panel.patch
 
+# Don't ever enable double buffered shadowfb and fix software rendering
+# detection (#1921151)
+Patch509: 0001-clutter-stage-view-Hide-double-buffered-shadowfb-beh.patch
+Patch510: 0002-cogl-gpu-info-Fix-software-acceleration-detection.patch
+
 BuildRequires: chrpath
 BuildRequires: pango-devel
 BuildRequires: startup-notification-devel
@@ -313,6 +318,10 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
 %{_datadir}/mutter-%{mutter_api_version}/tests
 
 %changelog
+* Tue Feb 09 2021 Jonas Ådahl <jadahl@redhat.com> - 3.32.2-55
+- Fix slow nouveau with llvmpipe
+  Resolves: #1921151
+
 * Tue Jan 12 2021 Jonas Ådahl <jadahl@redhat.com> - 3.32.2-54
 - Fix polyinstantiation patch backport
   Resolves: #1861769