appel gettid witin de la glibc

Je travaille dans la glibc, et j'ai besoin de pour obtenir l'id du thread courant. Pour cela, j'utilise
syscall(SYS_gettid); Question est, je suis forcé d'inclure bits/syscall.h au lieu de le cas idéal, j'.e sys/syscall.h.

sys/syscall.h appelle en interne bits/syscall.h mais qui est enveloppé avec #ifndef _LIBC macro. j'.e

     #ifndef _LIBC
        /* The Linux kernel header file defines macros `__NR_<name>', but some
           programs expect the traditional form `SYS_<name>'.  So in building libc
           we scan the kernel's list and produce <bits/syscall.h> with macros for
           all the `SYS_' names.  */
       # include <bits/syscall.h>
    #endif

aussi bits/syscall.h états qui
"Ne jamais utiliser bits/syscall.h directement; include sys/syscall.h à la place."

Depuis _LIBC sera défini dans mon cas, comme je suis en train d'écrire directement le code dans malloc.c,
s'il vous plaît suggérer mon comment puis-je remédier à cela.

Grâce,
Kapil

InformationsquelleAutor Kapil | 2012-03-05