Revert "Add get proc name wrapper for FreeBSD"
[lttng-ust.git] / liblttng-ust / compat.h
index 37480671052edcb872c58345958b7c543c2ddea4..8ee4470a0b381289986e48742274fa287d835e1a 100644 (file)
  * modified is included with the above copyright notice.
  */
 
-/*
- * lttng_ust_getprocname.
- */
-#ifdef __linux__
-
-#include <sys/prctl.h>
-
-#define LTTNG_UST_PROCNAME_LEN 17
-
-static inline
-void lttng_ust_getprocname(char *name)
-{
-       (void) prctl(PR_GET_NAME, (unsigned long) name, 0, 0, 0);
-}
+#include <sys/syscall.h>
 
-#elif defined(__FreeBSD__)
-#include <stdlib.h>
-#include <string.h>
-
-/*
- * Limit imposed by Linux UST-sessiond ABI.
- */
-#define LTTNG_UST_PROCNAME_LEN 17
-
-/*
- * Acts like linux prctl, the string is not necessarily 0-terminated if
- * 16-byte long.
- */
+#ifdef __UCLIBC__
+#define __getcpu(cpu, node, cache)     syscall(__NR_getcpu, cpu, node, cache)
 static inline
-void lttng_ust_getprocname(char *name)
+int sched_getcpu(void)
 {
-       const char *bsd_name;
+       int c, s;
 
-       bsd_name = getprogname();
-       if (!bsd_name)
-               name[0] = '\0';
-       memcpy(name, bsd_name, LTTNG_UST_PROCNAME_LEN - 1);
+       s = __getcpu(&c, NULL, NULL);
+       return (s == -1) ? s : c;
 }
-
-#endif
-
+#endif /* __UCLIBC__ */
 #endif /* _UST_COMPAT_H */
This page took 0.025665 seconds and 4 git commands to generate.