diff options
author | Patrick Williams <iawillia@us.ibm.com> | 2010-06-11 21:40:31 -0500 |
---|---|---|
committer | Patrick Williams <iawillia@us.ibm.com> | 2010-06-11 21:40:31 -0500 |
commit | 24e81bc664f5cdbfc8be1badf00b025ec122af00 (patch) | |
tree | 2d41e3305fb903024541d105dfec6adf1824839a /src/sys | |
parent | 165e6bed506f9fddd7e9da8ad1f4c7f186e29b00 (diff) | |
download | talos-hostboot-24e81bc664f5cdbfc8be1badf00b025ec122af00.tar.gz talos-hostboot-24e81bc664f5cdbfc8be1badf00b025ec122af00.zip |
Add mutex userspace / syscalls.
Diffstat (limited to 'src/sys')
-rw-r--r-- | src/sys/init/init_main.C | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/sys/init/init_main.C b/src/sys/init/init_main.C index 8be5ae6c3..efeddcafd 100644 --- a/src/sys/init/init_main.C +++ b/src/sys/init/init_main.C @@ -1,10 +1,15 @@ #include <kernel/console.H> // TODO : Remove this. #include <sys/task.h> +#include <sys/mutex.h> + +mutex_t global_mutex; void init_child(void* unused) { + mutex_lock(global_mutex); printk("Here I am %d\n", task_gettid()); + mutex_unlock(global_mutex); task_end(); } @@ -12,10 +17,14 @@ void init_main(void* unused) { printk("Starting init!\n"); + global_mutex = mutex_create(); + while(1) { + mutex_lock(global_mutex); int t = task_create(&init_child, NULL); printk("Created child %d\n", t); for (volatile int i = 0 ; i < 10000000; i++); + mutex_unlock(global_mutex); } } |