aboutsummaryrefslogtreecommitdiffstats
path: root/include/litmus/ce_domain.h
blob: 373f3f5f78d38894db57f6a0fe06f9b97e7ba125 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef _LITMUS_CE_DOMAIN_H
#define _LITMUS_CE_DOMAIN_H

/*
 * Functions that the MC plugin needs to call through a domain pointer.
 */
void ce_requeue(domain_t*, struct task_struct*);
struct task_struct* ce_peek_and_take_ready(domain_t*);
int ce_higher_prio(struct task_struct*, struct task_struct*);

typedef enum hrtimer_restart (*ce_timer_callback_t)(struct hrtimer*);

void ce_domain_init(domain_t*,
		raw_spinlock_t*,
		requeue_t,
		peek_ready_t,
		take_ready_t,
		preempt_needed_t,
		task_prio_t,
		struct ce_dom_data*,
		const int,
		ce_timer_callback_t);
#endif