> I think you can avoid this by using the primitive: > > lwpid_t tid; > syscall (SYS_thr_self, &tid); There is a mess in kernel interfaces, the right one is long tid; syscall (SYS_thr_self, &tid); But it holds only for current pthread implementation, it can be changed anytime. Petr