diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index b10af16..83944c2 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,5 +1,22 @@
 2019-10-11  Dean Jackson  <dino@apple.com>
 
+        Layout test fast/events/touch/ios/passive-by-default-on-document-and-window.html is a flaky failure on Internal iOS Testers
+        https://bugs.webkit.org/show_bug.cgi?id=202858
+        <rdar://51829520>
+
+        Reviewed by Tim Horton.
+
+        We can't guarantee how many touchmove events we'll get for a drag, so
+        this was flaky. Easiest thing to do is remove the listeners, since they
+        aren't an important part of the test. (We could have removed them on
+        firing too, which we do for the similar test that exercises the case
+        where we don't use the default options)
+
+        * fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt:
+        * fast/events/touch/ios/passive-by-default-on-document-and-window.html:
+
+2019-10-11  Dean Jackson  <dino@apple.com>
+
         REGRESSION: fast/events/touch/ios/long-press-on-image.html is failing
         https://bugs.webkit.org/show_bug.cgi?id=202845
         <rdar://51717197>
diff --git a/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt b/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt
index 08dcbe5..7690f3f 100644
--- a/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt
+++ b/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt
@@ -2,10 +2,6 @@
 touchstart on documentElement - cancelable: true defaultPrevented: true 
 touchstart on document - cancelable: true defaultPrevented: true 
 touchstart on window - cancelable: true defaultPrevented: true 
-touchmove on body - cancelable: true defaultPrevented: true 
-touchmove on documentElement - cancelable: true defaultPrevented: true 
-touchmove on document - cancelable: true defaultPrevented: true 
-touchmove on window - cancelable: true defaultPrevented: true 
 touchend on body - cancelable: true defaultPrevented: true 
 touchend on documentElement - cancelable: true defaultPrevented: true 
 touchend on document - cancelable: true defaultPrevented: true 
diff --git a/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window.html b/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window.html
index 67dc7b7..84b8933 100644
--- a/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window.html
+++ b/LayoutTests/fast/events/touch/ios/passive-by-default-on-document-and-window.html
@@ -22,11 +22,6 @@
         output += `touchstart on window - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
     }, false);
 
-    window.addEventListener("touchmove", function(event) {
-        event.preventDefault();
-        output += `touchmove on window - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
-    }, false);
-
     window.addEventListener("touchend", function(event) {
         event.preventDefault();
         output += `touchend on window - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
@@ -37,11 +32,6 @@
         output += `touchstart on document - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
     }, false);
 
-    document.addEventListener("touchmove", function(event) {
-        event.preventDefault();
-        output += `touchmove on document - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
-    }, false);
-
     document.addEventListener("touchend", function(event) {
         event.preventDefault();
         output += `touchend on document - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
@@ -52,11 +42,6 @@
         output += `touchstart on documentElement - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
     }, false);
 
-    document.documentElement.addEventListener("touchmove", function(event) {
-        event.preventDefault();
-        output += `touchmove on documentElement - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
-    }, false);
-
     document.documentElement.addEventListener("touchend", function(event) {
         event.preventDefault();
         output += `touchend on documentElement - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
@@ -69,11 +54,6 @@
         output += `touchstart on body - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
     }, false);
 
-    body.addEventListener("touchmove", function(event) {
-        event.preventDefault();
-        output += `touchmove on body - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
-    }, false);
-
     body.addEventListener("touchend", function(event) {
         event.preventDefault();
         output += `touchend on body - cancelable: ${event.cancelable} defaultPrevented: ${event.defaultPrevented} <br>`;
