aboutsummaryrefslogtreecommitdiff
path: root/include/util/mutex.h
blob: 524a4619114f31ff4180b06ea63610b6430fac47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef UTIL_MUTEX_H
#define UTIL_MUTEX_H

#define NULL_PID 0
#define SYS_PID 1
#define SCHED_PID 2

struct Mutex {
	void* addr;
	unsigned long pid;
} __attribute__((packed, aligned(4)));;

unsigned char lock_mutex(struct Mutex*, unsigned long);
unsigned char release_mutex(struct Mutex*, unsigned long);
struct Mutex* create_mutex(void* addr);

#endif