diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2007-04-15 16:33:52 -0400 |
---|---|---|
committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2007-04-15 16:33:52 -0400 |
commit | 8058e6e224d96d4e00896c71f18921ce0036a3bd (patch) | |
tree | cd85a2aa99eca3879989c4f59ff84fc098ec7836 /include | |
parent | 3771d1e5ab177f6bbd547fcddd5d0a2a484fb590 (diff) |
added flag for non-preemptable sections
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/rt_param.h | 10 |
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) \ |
108 | memset(&(t)->rt_param,0, sizeof(struct task_rt_param)) | 112 | memset(&(t)->rt_param,0, sizeof(struct task_rt_param)) |