diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 5888a1f..1885fbe 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,20 @@
+2019-05-11  Simon Fraser  <simon.fraser@apple.com>
+
+        Overflow scroll that becomes non-scrollable should stop being composited
+        https://bugs.webkit.org/show_bug.cgi?id=197817
+        <rdar://problem/50697290>
+
+        Reviewed by Antti Koivisto.
+
+        Put in a compositing/scrolling/async-overflow-scrolling dir so we can enable it only
+        for platforms that have async overflow scrolling.
+
+        * TestExpectations:
+        * compositing/scrolling/async-overflow-scrolling/become-non-scrollable-expected.txt: Added.
+        * compositing/scrolling/async-overflow-scrolling/become-non-scrollable.html: Added.
+        * platform/ios-wk2/TestExpectations:
+        * platform/mac-wk2/TestExpectations:
+
 2019-05-11  Alexey Proskuryakov  <ap@apple.com>
 
         Cleaning up results for legacy-animation-engine tests
diff --git a/LayoutTests/TestExpectations b/LayoutTests/TestExpectations
index 5650727..18521e1 100644
--- a/LayoutTests/TestExpectations
+++ b/LayoutTests/TestExpectations
@@ -61,6 +61,7 @@
 
 # Requires async overflow scrolling
 compositing/shared-backing/overflow-scroll [ Skip ]
+compositing/scrolling/async-overflow-scrolling [ Skip ]
 
 # WebKit2 only.
 printing/printing-events.html [ Skip ]
diff --git a/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable-expected.txt b/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable-expected.txt
new file mode 100644
index 0000000..cf04ad6
--- /dev/null
+++ b/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable-expected.txt
@@ -0,0 +1,3 @@
+There should be no layers.
+
+
diff --git a/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable.html b/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable.html
new file mode 100644
index 0000000..a5ab81e
--- /dev/null
+++ b/LayoutTests/compositing/scrolling/async-overflow-scrolling/become-non-scrollable.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html> <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->
+<html>
+<head>
+    <title>Tests an overflow scroll stops compositing if its content shrinks</title>
+    <style>
+        .scrollable {
+            overflow-y: scroll;
+            height: 300px;
+            width: 300px;
+            margin: 10px;
+            border: 1px solid black;
+        }
+    
+        .contents {
+            height: 500px;
+            width: 20px;
+            background-color: silver;
+        }
+        
+        .contents.changed {
+            height: 100px;
+        }
+    </style>
+    <script>
+        if (window.testRunner) {
+            testRunner.dumpAsText();
+            testRunner.waitUntilDone();
+        }
+
+        window.addEventListener('load', () => {
+            setTimeout(() => {
+                document.querySelector('.contents').classList.add('changed');
+
+                if (window.internals)
+                    document.getElementById('layers').innerText = window.internals.layerTreeAsText(document);
+
+                if (window.testRunner)
+                    testRunner.notifyDone();
+            }, 0);
+        }, false);
+    </script>
+</head>
+<body>
+    <div class="scrollable">
+        <div class="contents"></div>
+    </div>
+<p>There should be no layers.</p>
+<pre id="layers"></pre>
+</body>
+</html>
+
diff --git a/LayoutTests/platform/ios-wk2/TestExpectations b/LayoutTests/platform/ios-wk2/TestExpectations
index b5383e1..a0f1cb5 100644
--- a/LayoutTests/platform/ios-wk2/TestExpectations
+++ b/LayoutTests/platform/ios-wk2/TestExpectations
@@ -8,6 +8,7 @@
 
 compositing/ios [ Pass ]
 compositing/shared-backing/overflow-scroll [ Pass ]
+compositing/scrolling/async-overflow-scrolling [ Pass ]
 fast/device-orientation [ Pass ]
 fast/history/ios [ Pass ]
 fast/scrolling/ios [ Pass ]
diff --git a/LayoutTests/platform/mac-wk2/TestExpectations b/LayoutTests/platform/mac-wk2/TestExpectations
index 450afa4..392053d 100644
--- a/LayoutTests/platform/mac-wk2/TestExpectations
+++ b/LayoutTests/platform/mac-wk2/TestExpectations
@@ -6,6 +6,7 @@
 #//////////////////////////////////////////////////////////////////////////////////////////
 
 compositing/shared-backing/overflow-scroll [ Pass ]
+compositing/scrolling/async-overflow-scrolling [ Pass ]
 editing/find [ Pass ]
 editing/undo-manager [ Pass ]
 fast/forms/select/mac-wk2 [ Pass ]
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index c7c8dca..626c55f 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,5 +1,21 @@
 2019-05-11  Simon Fraser  <simon.fraser@apple.com>
 
+        Overflow scroll that becomes non-scrollable should stop being composited
+        https://bugs.webkit.org/show_bug.cgi?id=197817
+        <rdar://problem/50697290>
+
+        Reviewed by Antti Koivisto.
+
+        Remove the iOS-specific #ifdef around code that triggers a compositing re-evaluation
+        when scrolling state changes.
+
+        Test: compositing/scrolling/async-overflow-scrolling/become-non-scrollable.html
+
+        * rendering/RenderLayer.cpp:
+        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
+
+2019-05-11  Simon Fraser  <simon.fraser@apple.com>
+
         Layer bounds are incorrect for sharing layers that paint with transforms
         https://bugs.webkit.org/show_bug.cgi?id=197768
         <rdar://problem/50695493>
diff --git a/Source/WebCore/rendering/RenderLayer.cpp b/Source/WebCore/rendering/RenderLayer.cpp
index 185a875..7aa11aa 100644
--- a/Source/WebCore/rendering/RenderLayer.cpp
+++ b/Source/WebCore/rendering/RenderLayer.cpp
@@ -3709,10 +3709,8 @@
         setNeedsCompositingConfigurationUpdate();
     }
 
-#if PLATFORM(IOS_FAMILY)
     if (canUseCompositedScrolling())
         setNeedsPostLayoutCompositingUpdate();
-#endif
 
     updateScrollSnapState();
 }
