diff --git a/transport/include/hidl/HidlLazyUtils.h b/transport/include/hidl/HidlLazyUtils.h
index 2205daa..257de98 100644
--- a/transport/include/hidl/HidlLazyUtils.h
+++ b/transport/include/hidl/HidlLazyUtils.h
@@ -29,12 +29,13 @@
 /** Exits when all HALs registered through this object have 0 clients */
 class LazyServiceRegistrar {
    public:
-    LazyServiceRegistrar();
-    status_t registerService(const sp<::android::hidl::base::V1_0::IBase>& service,
-                             const std::string& name = "default");
+     LazyServiceRegistrar();
+     static LazyServiceRegistrar& getInstance();
+     status_t registerService(const sp<::android::hidl::base::V1_0::IBase>& service,
+                              const std::string& name = "default");
 
    private:
-    std::shared_ptr<details::LazyServiceRegistrarImpl> mImpl;
+     std::shared_ptr<details::LazyServiceRegistrarImpl> mImpl;
 };
 
 }  // namespace hardware
diff --git a/transport/include/hidl/LegacySupport.h b/transport/include/hidl/LegacySupport.h
index 0a9feee..fdc5a48 100644
--- a/transport/include/hidl/LegacySupport.h
+++ b/transport/include/hidl/LegacySupport.h
@@ -91,15 +91,6 @@
     return defaultPassthroughServiceImplementation<Interface>("default", maxThreads);
 }
 
-// Make LazyServiceRegistrar static so that multiple calls to
-// registerLazyPassthroughServiceImplementation work as expected: each HAL is registered and the
-// process only exits once all HALs have 0 clients.
-static inline std::shared_ptr<LazyServiceRegistrar> getOrCreateLazyServiceRegistrar() {
-    using android::hardware::LazyServiceRegistrar;
-    static auto serviceCounter(std::make_shared<LazyServiceRegistrar>());
-    return serviceCounter;
-}
-
 /**
  * Registers a passthrough service implementation that exits when there are 0 clients.
  *
@@ -112,10 +103,11 @@
 __attribute__((warn_unused_result)) status_t registerLazyPassthroughServiceImplementation(
     const std::string& name = "default") {
     return details::registerPassthroughServiceImplementation<Interface>(
-        [](const sp<Interface>& service, const std::string& name) {
-            return getOrCreateLazyServiceRegistrar()->registerService(service, name);
-        },
-        name);
+            [](const sp<Interface>& service, const std::string& name) {
+                using android::hardware::LazyServiceRegistrar;
+                return LazyServiceRegistrar::getInstance().registerService(service, name);
+            },
+            name);
 }
 
 /**
