aboutsummaryrefslogtreecommitdiffstats
path: root/include/litmus/prio_sem.h
blob: eb54c670947ab688bcf95052f274c29b645cd6f8 (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
24
25
26
27
28
29
30
31
/* Operations and structures for dealing with generic priority inheritance. */

#ifndef _LINUX_PI_H_
#include <linux/sched.h>

/* forward declaration */
struct pi_semaphore;

/* stack operations */
void push_pi_sem(
	struct task_struct *tsk,
	struct task_struct *inh,
	struct pi_semaphore *sem);

void pop_pi_sem(struct task_struct *tsk);

pi_sem_record_t* peek_pi_sem(struct task_struct *tsk);

/* non-stack operations */
int update_pi_sem(
	struct task_struct *tsk,
	struct task_struct *inh,
	struct pi_semaphore *sem);

int remove_pi_sem(
	struct task_struct *tsk,
	struct pi_semaphore *sem);

int has_pi_sem(struct task_struct *tsk);

#endif