diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNSSComponent.cpp
index 737f94812dae3882e931b9c08a947ee17130ecef..90bc63871075f0785e83dbc5c42bbf74db2f04c8 100644
--- a/security/manager/ssl/nsNSSComponent.cpp
+++ b/security/manager/ssl/nsNSSComponent.cpp
@@ -2158,15 +2158,11 @@ nsresult nsNSSComponent::MaybeEnableIntermediatePreloadingHealer() {
     return NS_OK;
   }
 
-  if (!mIntermediatePreloadingHealerTaskQueue) {
-    nsresult rv = NS_CreateBackgroundTaskQueue(
-        "IntermediatePreloadingHealer",
-        getter_AddRefs(mIntermediatePreloadingHealerTaskQueue));
-    if (NS_FAILED(rv)) {
-      MOZ_LOG(gPIPNSSLog, LogLevel::Error,
-              ("NS_CreateBackgroundTaskQueue failed"));
-      return rv;
-    }
+  nsCOMPtr<nsIEventTarget> socketThread(
+      do_GetService(NS_SOCKETTRANSPORTSERVICE_CONTRACTID));
+  if (!socketThread) {
+    MOZ_LOG(gPIPNSSLog, LogLevel::Error, ("couldn't get socket thread?"));
+    return NS_ERROR_FAILURE;
   }
   uint32_t timerDelayMS =
       StaticPrefs::security_intermediate_preloading_healer_timer_interval_ms();
@@ -2174,7 +2170,7 @@ nsresult nsNSSComponent::MaybeEnableIntermediatePreloadingHealer() {
       getter_AddRefs(mIntermediatePreloadingHealerTimer),
       IntermediatePreloadingHealerCallback, nullptr, timerDelayMS,
       nsITimer::TYPE_REPEATING_SLACK_LOW_PRIORITY,
-      "IntermediatePreloadingHealer", mIntermediatePreloadingHealerTaskQueue);
+      "IntermediatePreloadingHealer", socketThread);
   if (NS_FAILED(rv)) {
     MOZ_LOG(gPIPNSSLog, LogLevel::Error,
             ("NS_NewTimerWithFuncCallback failed"));
diff --git a/security/manager/ssl/nsNSSComponent.h b/security/manager/ssl/nsNSSComponent.h
index 4fbcdb0359cedd070c103c4ddad5d9b8ef3b88ad..d31a1413c958ed1b8f2137a5a0fb19584f20a2b5 100644
--- a/security/manager/ssl/nsNSSComponent.h
+++ b/security/manager/ssl/nsNSSComponent.h
@@ -137,11 +137,10 @@ class nsNSSComponent final : public nsINSSComponent, public nsIObserver {
   // The following members are accessed only on the main thread:
   static int mInstanceCount;
   // If the intermediate preloading healer is enabled, the following timer
-  // periodically dispatches events to the background task queue. Each of these
+  // periodically dispatches events to the socket thread. Each of these
   // events scans the NSS certdb for preloaded intermediates that are in
   // cert_storage and thus can be removed. By default, the interval is 5
   // minutes.
-  nsCOMPtr<nsISerialEventTarget> mIntermediatePreloadingHealerTaskQueue;
   nsCOMPtr<nsITimer> mIntermediatePreloadingHealerTimer;
 };