From de6f505d545a075b0ddef243c71f82acbd22ba60 Mon Sep 17 00:00:00 2001 From: Jonathan Herman Date: Sat, 2 Apr 2011 17:43:34 -0400 Subject: Bug fixes. --- include/litmus/rt_domain.h | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'include') diff --git a/include/litmus/rt_domain.h b/include/litmus/rt_domain.h index ac249292e866..0756f30f1387 100644 --- a/include/litmus/rt_domain.h +++ b/include/litmus/rt_domain.h @@ -80,7 +80,7 @@ void rt_domain_init(rt_domain_t *rt, bheap_prio_t order, void __add_ready(rt_domain_t* rt, struct task_struct *new); void __merge_ready(rt_domain_t* rt, struct bheap *tasks); -void __add_release(rt_domain_t* rt, struct task_struct *task); +int __add_release(rt_domain_t* rt, struct task_struct *task); static inline struct task_struct* __take_ready(rt_domain_t* rt) { @@ -140,26 +140,31 @@ static inline struct task_struct* take_ready(rt_domain_t* rt) } -static inline void add_release(rt_domain_t* rt, struct task_struct *task) +static inline int add_release(rt_domain_t* rt, struct task_struct *task) { + int rv; unsigned long flags; raw_spin_lock_irqsave(&rt->tobe_lock, flags); - __add_release(rt, task); + rv = __add_release(rt, task); raw_spin_unlock_irqrestore(&rt->tobe_lock, flags); + return rv; } #ifdef CONFIG_RELEASE_MASTER -void __add_release_on(rt_domain_t* rt, struct task_struct *task, - int target_cpu); +int __add_release_on(rt_domain_t* rt, struct task_struct *task, + int target_cpu); -static inline void add_release_on(rt_domain_t* rt, - struct task_struct *task, - int target_cpu) +static inline int add_release_on(rt_domain_t* rt, + struct task_struct *task, + int target_cpu) { + int rv; unsigned long flags; raw_spin_lock_irqsave(&rt->tobe_lock, flags); - __add_release_on(rt, task, target_cpu); + rv = __add_release_on(rt, task, target_cpu); raw_spin_unlock_irqrestore(&rt->tobe_lock, flags); + + return rv; } #endif -- cgit v1.2.2