summaryrefslogtreecommitdiff
path: root/sysdeps/l4/pt-thread-start.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/l4/pt-thread-start.c')
-rw-r--r--sysdeps/l4/pt-thread-start.c12
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;
}