diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-10-08 07:03:03 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-10-08 07:03:03 +0000 |
commit | 9640bbe1c1fab7e1373e59160889b1fbc0bd000c (patch) | |
tree | 287038440c837cce542aba340414a0ce3b677f35 /linuxthreads | |
parent | 10507e559514de6b31d1b81cbcc3c81b662aef89 (diff) | |
download | glibc-9640bbe1c1fab7e1373e59160889b1fbc0bd000c.zip glibc-9640bbe1c1fab7e1373e59160889b1fbc0bd000c.tar.gz glibc-9640bbe1c1fab7e1373e59160889b1fbc0bd000c.tar.bz2 |
Update.
1999-10-07 Ulrich Drepper <drepper@cygnus.com>
* Implies: New file.
* internals.h (struct _pthread_descr_struct): Add p_startfct.
* manager.c (pthread_handle_create): Initialize p_startfct.
* pthread.c: Define __linuxthread_pthread_sizeof_descr variable.
Diffstat (limited to 'linuxthreads')
-rw-r--r-- | linuxthreads/ChangeLog | 7 | ||||
-rw-r--r-- | linuxthreads/Implies | 1 | ||||
-rw-r--r-- | linuxthreads/internals.h | 1 | ||||
-rw-r--r-- | linuxthreads/manager.c | 1 | ||||
-rw-r--r-- | linuxthreads/pthread.c | 2 |
5 files changed, 12 insertions, 0 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog index d83f63c..872d17e 100644 --- a/linuxthreads/ChangeLog +++ b/linuxthreads/ChangeLog @@ -1,3 +1,10 @@ +1999-10-07 Ulrich Drepper <drepper@cygnus.com> + + * Implies: New file. + * internals.h (struct _pthread_descr_struct): Add p_startfct. + * manager.c (pthread_handle_create): Initialize p_startfct. + * pthread.c: Define __linuxthread_pthread_sizeof_descr variable. + 1999-09-25 Ulrich Drepper <drepper@cygnus.com> * manager.c (__linuxthreads_pthread_threads_max): New variable. diff --git a/linuxthreads/Implies b/linuxthreads/Implies new file mode 100644 index 0000000..2c56497 --- /dev/null +++ b/linuxthreads/Implies @@ -0,0 +1 @@ +linuxthreads_db diff --git a/linuxthreads/internals.h b/linuxthreads/internals.h index 34297fe..73243d4 100644 --- a/linuxthreads/internals.h +++ b/linuxthreads/internals.h @@ -113,6 +113,7 @@ struct _pthread_descr_struct { size_t p_guardsize; /* size of guard area */ pthread_descr p_self; /* Pointer to this structure */ int p_nr; /* Index of descriptor in __pthread_handles */ + void *(*p_startfct) (void *); /* The startup function of this thread. */ } __attribute__ ((aligned(32))); /* We need to align the structure so that doubles are aligned properly. This is 8 bytes on MIPS and 16 bytes on MIPS64. diff --git a/linuxthreads/manager.c b/linuxthreads/manager.c index b481fc8..e59f980 100644 --- a/linuxthreads/manager.c +++ b/linuxthreads/manager.c @@ -342,6 +342,7 @@ static int pthread_handle_create(pthread_t *thread, const pthread_attr_t *attr, new_thread->p_guardsize = guardsize; new_thread->p_self = new_thread; new_thread->p_nr = sseg; + new_thread->p_startfct = start_routine; /* Initialize the thread handle */ __pthread_init_lock(&__pthread_handles[sseg].h_lock); __pthread_handles[sseg].h_descr = new_thread; diff --git a/linuxthreads/pthread.c b/linuxthreads/pthread.c index 2f10f06..aea6db1 100644 --- a/linuxthreads/pthread.c +++ b/linuxthreads/pthread.c @@ -150,6 +150,8 @@ const int __pthread_offsetof_descr = offsetof(struct pthread_handle_struct, h_descr); const int __pthread_offsetof_pid = offsetof(struct _pthread_descr_struct, p_pid); +const int __linuxthread_pthread_sizeof_descr + = sizeof(struct _pthread_descr_struct); /* These variables are used by the setup code. */ extern int _errno; |