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/init | |
| parent | 165e6bed506f9fddd7e9da8ad1f4c7f186e29b00 (diff) | |
| download | blackbird-hostboot-24e81bc664f5cdbfc8be1badf00b025ec122af00.tar.gz blackbird-hostboot-24e81bc664f5cdbfc8be1badf00b025ec122af00.zip | |
Add mutex userspace / syscalls.
Diffstat (limited to 'src/sys/init')
| -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); } } |

