Mercurial > ecos-v3_0-branch
diff packages/compat/posix/current/src/pthread.cxx @ 147:d397fc472bcf
Merge from eCos master repository on 2001-01-05-06:43:02-GMT
| author | jlarmour |
|---|---|
| date | Fri, 05 Jan 2001 17:12:36 +0000 |
| parents | a9ac27ec7abc |
| children | 8f2f7615e727 |
line wrap: on
line diff
--- a/packages/compat/posix/current/src/pthread.cxx +++ b/packages/compat/posix/current/src/pthread.cxx @@ -48,6 +48,7 @@ #include <pkgconf/kernel.h> #include <pkgconf/posix.h> #include <pkgconf/isoinfra.h> +#include <pkgconf/libc_startup.h> #include <cyg/kernel/ktypes.h> // base kernel types #include <cyg/infra/cyg_trac.h> // tracing macros @@ -155,7 +156,7 @@ static pthread_t thread_id_cookie = THRE //----------------------------------------------------------------------------- // Main thread. -static char main_stack[CYGNUM_POSIX_MAIN_DEFAULT_STACK_SIZE]; +static char main_stack[CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE]; // Thread ID of main thread. static pthread_t main_thread; @@ -390,8 +391,8 @@ externC void cyg_posix_pthread_start( vo pthread_attr_init( &attr ); pthread_attr_setinheritsched( &attr, PTHREAD_EXPLICIT_SCHED ); - pthread_attr_setstackaddr( &attr, &main_stack[CYGNUM_POSIX_MAIN_DEFAULT_STACK_SIZE] ); - pthread_attr_setstacksize( &attr, CYGNUM_POSIX_MAIN_DEFAULT_STACK_SIZE ); + pthread_attr_setstackaddr( &attr, &main_stack[CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE] ); + pthread_attr_setstacksize( &attr, CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE ); pthread_attr_setschedpolicy( &attr, SCHED_RR ); pthread_attr_setschedparam( &attr, &schedparam ); @@ -2019,4 +2020,19 @@ externC void pthread_cleanup_pop_inner ( // ------------------------------------------------------------------------- +// eCos-specific function to measure stack usage of the supplied thread + +#ifdef CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT +externC size_t pthread_measure_stack_usage (pthread_t thread) +{ + pthread_info *th = pthread_info_id(thread); + + if ( NULL == th ) + return (size_t)-1; + + return (size_t)th->thread->measure_stack_usage(); +} +#endif + +// ------------------------------------------------------------------------- // EOF pthread.cxx
