diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-09-14 08:34:36 -0400 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-09-14 08:34:36 -0400 |
commit | 4ad6ba08f0dab67bbd89a26b27f1cc86e3c45c13 (patch) | |
tree | fd982c7a12f7a947278e05d0b126a015c24793f4 /include/litmus/rt_param.h | |
parent | c1d1979c99ca397241da4e3d7e0cb77f7ec28240 (diff) |
checkpoint for aux_tasks. can still deadlock
Diffstat (limited to 'include/litmus/rt_param.h')
-rw-r--r-- | include/litmus/rt_param.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/include/litmus/rt_param.h b/include/litmus/rt_param.h index 02b750a9570b..2a6c70f1dd37 100644 --- a/include/litmus/rt_param.h +++ b/include/litmus/rt_param.h | |||
@@ -285,9 +285,13 @@ struct rt_param { | |||
285 | #endif | 285 | #endif |
286 | 286 | ||
287 | 287 | ||
288 | struct task_struct* hp_group; | 288 | #ifdef CONFIG_LITMUS_LOCKING |
289 | unsigned int is_slave:1; | 289 | unsigned int is_aux_task:1; |
290 | unsigned int has_slaves:1; | 290 | unsigned int has_aux_tasks:1; |
291 | |||
292 | struct list_head aux_task_node; | ||
293 | struct binheap_node aux_task_owner_node; | ||
294 | #endif | ||
291 | 295 | ||
292 | 296 | ||
293 | #ifdef CONFIG_NP_SECTION | 297 | #ifdef CONFIG_NP_SECTION |
@@ -354,6 +358,13 @@ struct rt_param { | |||
354 | struct control_page * ctrl_page; | 358 | struct control_page * ctrl_page; |
355 | }; | 359 | }; |
356 | 360 | ||
361 | struct aux_data | ||
362 | { | ||
363 | struct list_head aux_tasks; | ||
364 | struct binheap aux_task_owners; | ||
365 | unsigned int initialized:1; | ||
366 | }; | ||
367 | |||
357 | /* Possible RT flags */ | 368 | /* Possible RT flags */ |
358 | #define RT_F_RUNNING 0x00000000 | 369 | #define RT_F_RUNNING 0x00000000 |
359 | #define RT_F_SLEEP 0x00000001 | 370 | #define RT_F_SLEEP 0x00000001 |