diff options
Diffstat (limited to 'sysdeps/l4/pt-thread-start.c')
-rw-r--r-- | sysdeps/l4/pt-thread-start.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sysdeps/l4/pt-thread-start.c b/sysdeps/l4/pt-thread-start.c index 10996e1c..538d0444 100644 --- a/sysdeps/l4/pt-thread-start.c +++ b/sysdeps/l4/pt-thread-start.c @@ -1,5 +1,5 @@ /* Start thread. L4 version. - Copyright (C) 2003, 2004 Free Software Foundation, Inc. + Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -29,12 +29,12 @@ __pthread_thread_start (struct __pthread *thread) { /* The main thread is already running of course. */ if (__pthread_num_threads == 1) - assert (__pthread_total == 1); - else { - l4_set_pager_of (thread->threadid, l4_pager ()); - l4_start_sp_ip (thread->threadid, (l4_word_t) thread->mcontext.sp, - (l4_word_t) thread->mcontext.pc); + assert (__pthread_total == 1); + assert (l4_is_thread_equal (l4_myself (), thread->threadid)); } + else + l4_start_sp_ip (thread->threadid, (l4_word_t) thread->mcontext.sp, + (l4_word_t) thread->mcontext.pc); return 0; } |