Changed aos_sync to absl::call_once()

Change-Id: Ib1a87946c0d0dbba681190a175964f99b1c82f07
diff --git a/aos/ipc_lib/BUILD b/aos/ipc_lib/BUILD
index 1e8b118..684620a 100644
--- a/aos/ipc_lib/BUILD
+++ b/aos/ipc_lib/BUILD
@@ -13,7 +13,7 @@
     ],
     deps = [
         "//aos:macros",
-        "//aos:once",
+        "@com_google_absl//absl/base",
         "//aos/logging",
         "//aos/util:compiler_memory_barrier",
     ],
diff --git a/aos/ipc_lib/aos_sync.cc b/aos/ipc_lib/aos_sync.cc
index 101a189..3962467 100644
--- a/aos/ipc_lib/aos_sync.cc
+++ b/aos/ipc_lib/aos_sync.cc
@@ -29,7 +29,7 @@
 #include "aos/logging/logging.h"
 #include "aos/macros.h"
 #include "aos/util/compiler_memory_barrier.h"
-#include "aos/once.h"
+#include "absl/base/call_once.h"
 
 using ::aos::linux_code::ipc_lib::FutexAccessorObserver;
 
@@ -377,11 +377,10 @@
   my_tid = 0;
 }
 
-void *InstallAtforkHook() {
+void InstallAtforkHook() {
   if (pthread_atfork(NULL, NULL, atfork_child) != 0) {
     AOS_PLOG(FATAL, "pthread_atfork(NULL, NULL, %p) failed", atfork_child);
   }
-  return nullptr;
 }
 
 // This gets called to set everything up in a new thread by get_tid().
@@ -601,8 +600,8 @@
 
   my_tid = do_get_tid();
 
-  static ::aos::Once<void> atfork_hook_installed(InstallAtforkHook);
-  atfork_hook_installed.Get();
+  static absl::once_flag once_;
+  absl::call_once(once_, InstallAtforkHook);
 
   my_robust_list::Init();
 }