X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=liblttng-ust%2Fcompat.h;h=05b85a930615516da7175af84661ce144f7d5127;hb=e4486ebcdee39064492ed386b11008191fbbad17;hp=004e60ace8d86771652405c2076f555969bd12d8;hpb=e5757a9047b04cb2fb94d9dfdf7153e963eafa95;p=lttng-ust.git diff --git a/liblttng-ust/compat.h b/liblttng-ust/compat.h index 004e60ac..05b85a93 100644 --- a/liblttng-ust/compat.h +++ b/liblttng-ust/compat.h @@ -14,6 +14,28 @@ * modified is included with the above copyright notice. */ +/* + * sched_getcpu. + */ +#ifdef __linux__ + +#ifdef __UCLIBC__ +#include +#define __getcpu(cpu, node, cache) syscall(__NR_getcpu, cpu, node, cache) +static inline +int sched_getcpu(void) +{ + int c, s; + + s = __getcpu(&c, NULL, NULL); + return (s == -1) ? s : c; +} +#endif /* __UCLIBC__ */ + +#else +#error "Please add support for your OS into liblttng-ust/compat.h." +#endif + /* * lttng_ust_getprocname. */ @@ -55,10 +77,4 @@ void lttng_ust_getprocname(char *name) #endif -#include - -#ifndef ENODATA -#define ENODATA ENOMSG -#endif - #endif /* _UST_COMPAT_H */