Xenomai  3.0.8
thread.h
1 /*
2  * Copyright (C) 2005 Philippe Gerum <rpm@xenomai.org>.
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
17  */
18 #ifndef _COBALT_UAPI_THREAD_H
19 #define _COBALT_UAPI_THREAD_H
20 
21 #include <cobalt/uapi/kernel/thread.h>
22 
23 #define PTHREAD_WARNSW XNWARN
24 #define PTHREAD_LOCK_SCHED XNLOCK
25 #define PTHREAD_DISABLE_LOCKBREAK XNTRAPLB
26 #define PTHREAD_CONFORMING 0
27 
28 struct cobalt_mutexattr {
29  int type : 3;
30  int protocol : 3;
31  int pshared : 1;
32  int __pad : 1;
33 };
34 
35 struct cobalt_condattr {
36  int clock : 7;
37  int pshared : 1;
38 };
39 
40 struct cobalt_threadstat {
41  __u64 xtime;
42  __u64 timeout;
43  __u64 msw;
44  __u64 csw;
45  __u64 xsc;
46  __u32 status;
47  __u32 pf;
48  int cpu;
49  int cprio;
50  char name[XNOBJECT_NAME_LEN];
51  char personality[XNOBJECT_NAME_LEN];
52 };
53 
54 #endif /* !_COBALT_UAPI_THREAD_H */