diff --git a/libraries/base/tests/all.T b/libraries/base/tests/all.T
index 80e2ba97cc1949fc6451d46ce29ab95abab1e952..df67d9fd23661d1393376a9fcbccb6d66b00f201 100644
--- a/libraries/base/tests/all.T
+++ b/libraries/base/tests/all.T
@@ -81,8 +81,9 @@ test('length001',
      # stack limit and mark it as failing under a few conditions.
      [extra_run_opts('+RTS -K8m -RTS'),
      expect_fail_for(['normal', 'threaded1', 'llvm', 'nonmoving', 'nonmoving_thr', 'nonmoving_thr_ghc']),
-     # JS doesn't support stack limit so the test sometimes passes just fine. We decrease the timeout duration to force the failure.
-     when(js_arch(), run_timeout_multiplier(0.2))],
+     # JS doesn't support stack limit so the test sometimes passes just fine. Therefore the test is
+     # marked as fragile.
+     when(js_arch(), fragile(22921))],
      compile_and_run, [''])
 
 test('ratio001', 	normal, compile_and_run, [''])