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/ipc_comparison.cc b/aos/ipc_lib/ipc_comparison.cc
index f5614a6..cf19b20 100644
--- a/aos/ipc_lib/ipc_comparison.cc
+++ b/aos/ipc_lib/ipc_comparison.cc
@@ -811,13 +811,7 @@
     if (FLAGS_server_priority > 0) {
       SetCurrentThreadRealtimePriority(FLAGS_server_priority);
     }
-    {
-      cpu_set_t cpuset;
-      CPU_ZERO(&cpuset);
-      CPU_SET(FLAGS_server_cpu, &cpuset);
-
-      SetCurrentThreadAffinity(cpuset);
-    }
+    SetCurrentThreadAffinity(MakeCpusetFromCpus({FLAGS_server_cpu}));
 
     while (!done) {
       const PingPongerInterface::Data *data = ping_ponger->Wait();
@@ -832,13 +826,7 @@
   if (FLAGS_client_priority > 0) {
     SetCurrentThreadRealtimePriority(FLAGS_client_priority);
   }
-  {
-    cpu_set_t cpuset;
-    CPU_ZERO(&cpuset);
-    CPU_SET(FLAGS_client_cpu, &cpuset);
-
-    SetCurrentThreadAffinity(cpuset);
-  }
+  SetCurrentThreadAffinity(MakeCpusetFromCpus({FLAGS_client_cpu}));
 
   // Warm everything up.
   for (int i = 0; i < 1000; ++i) {