Refactor MakeCpusetFromCpus into realtime.h

It works without event_loop.  Also reuse it for some things in ipc_lib.

Change-Id: I520d254b6b27180b5e45bb43d63d425ca1db9e38
diff --git a/aos/ipc_lib/eventfd_latency.cc b/aos/ipc_lib/eventfd_latency.cc
index 47f6528..d1f6bcb 100644
--- a/aos/ipc_lib/eventfd_latency.cc
+++ b/aos/ipc_lib/eventfd_latency.cc
@@ -43,13 +43,7 @@
   // Sleep between 1 and 15 ms.
   ::std::uniform_int_distribution<> distribution(1000, 15000);
 
-  {
-    cpu_set_t cpuset;
-    CPU_ZERO(&cpuset);
-    CPU_SET(FLAGS_core, &cpuset);
-
-    SetCurrentThreadAffinity(cpuset);
-  }
+  SetCurrentThreadAffinity(MakeCpusetFromCpus({FLAGS_core}));
   SetCurrentThreadRealtimePriority(FLAGS_sender_priority);
   while (true) {
     const monotonic_clock::time_point wakeup_time =
@@ -123,13 +117,7 @@
     }
   });
 
-  {
-    cpu_set_t cpuset;
-    CPU_ZERO(&cpuset);
-    CPU_SET(FLAGS_core, &cpuset);
-
-    SetCurrentThreadAffinity(cpuset);
-  }
+  SetCurrentThreadAffinity(MakeCpusetFromCpus({FLAGS_core}));
   SetCurrentThreadRealtimePriority(FLAGS_receiver_priority);
   epoll.Run();
   UnsetCurrentThreadRealtimePriority();