aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorBjoern B. Brandenburg <bbb@cs.unc.edu>2007-04-15 16:33:52 -0400
committerBjoern B. Brandenburg <bbb@cs.unc.edu>2007-04-15 16:33:52 -0400
commit8058e6e224d96d4e00896c71f18921ce0036a3bd (patch)
treecd85a2aa99eca3879989c4f59ff84fc098ec7836 /include
parent3771d1e5ab177f6bbd547fcddd5d0a2a484fb590 (diff)
added flag for non-preemptable sections
Diffstat (limited to 'include')
-rw-r--r--include/linux/rt_param.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/include/linux/rt_param.h b/include/linux/rt_param.h
index da207f3262..74a4b59b79 100644
--- a/include/linux/rt_param.h
+++ b/include/linux/rt_param.h
@@ -56,6 +56,8 @@ typedef struct task_rt_param {
56 rt_param_t basic_params; 56 rt_param_t basic_params;
57 /* is the task sleeping? */ 57 /* is the task sleeping? */
58 unsigned int flags; 58 unsigned int flags;
59 /* can the current job be preempted? */
60 unsigned int is_non_preemptable;
59 61
60 /* put information for feedback control stuff and 62 /* put information for feedback control stuff and
61 * information about the performance of the task here 63 * information about the performance of the task here
@@ -78,9 +80,10 @@ typedef struct task_rt_param {
78} task_rt_param_t; 80} task_rt_param_t;
79 81
80/* Possible RT flags */ 82/* Possible RT flags */
81#define RT_F_RUNNING 0x00000000 83#define RT_F_RUNNING 0x00000000
82#define RT_F_SLEEP 0x00000001 84#define RT_F_SLEEP 0x00000001
83#define RT_F_EXP_QUANTA 0x00000002 85#define RT_F_EXP_QUANTA 0x00000002
86#define RT_F_NON_PREEMTABLE 0x00000004
84 87
85 88
86/* Realtime utility macros */ 89/* Realtime utility macros */
@@ -103,6 +106,7 @@ typedef struct task_rt_param {
103 ((t)->rt_param.basic_params.class == RT_CLASS_SOFT) 106 ((t)->rt_param.basic_params.class == RT_CLASS_SOFT)
104#define is_be(t) \ 107#define is_be(t) \
105 ((t)->rt_param.basic_params.class == RT_CLASS_BEST_EFFORT) 108 ((t)->rt_param.basic_params.class == RT_CLASS_BEST_EFFORT)
109#define is_np(t) ((t)->rt_param.is_non_preemptable)
106 110
107#define clear_rt_params(t) \ 111#define clear_rt_params(t) \
108memset(&(t)->rt_param,0, sizeof(struct task_rt_param)) 112memset(&(t)->rt_param,0, sizeof(struct task_rt_param))