Xenomai 3.3.2
Loading...
Searching...
No Matches
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
28struct cobalt_mutexattr {
29 int type : 3;
30 int protocol : 3;
31 int pshared : 1;
32 int __pad : 1;
33 int ceiling : 8; /* prio-1, (XN)SCHED_FIFO range. */
34};
35
36struct cobalt_condattr {
37 int clock : 7;
38 int pshared : 1;
39};
40
41struct cobalt_threadstat {
42 __u64 xtime;
43 __u64 timeout;
44 __u64 msw;
45 __u64 csw;
46 __u64 xsc;
47 __u32 status;
48 __u32 pf;
49 __s32 cpu;
50 __s32 cprio;
51 char name[XNOBJECT_NAME_LEN];
52 char personality[XNOBJECT_NAME_LEN];
53};
54
55#endif /* !_COBALT_UAPI_THREAD_H */