H8SX port having problems in _User_extensions_Thread_create()
Steven Grunza
grunza at ulticom.com
Thu Aug 21 16:42:57 UTC 2008
There's a line in cpukit/score/src/userextthreadcreate.c in the function
_User_extensions_Thread_create() that reads:
status = (*the_extension->Callouts.thread_create)(
_Thread_Executing, the_thread );
This appears to be calling _libc_create_hook() with the first argument
set to 0x00487eb0 and the second argument set to 0.
0x00487eb0 is the value of the_thread and appears to be somewhat sane.
A dump of the structure is below.
Where can I find the documentation on _libc_create_hook()? I'm not
certain it should be getting called at this point (the crash happens
early in the startup process somewhere between the calling of this
function and it's return.
Any help appreciated.
Here's the dump. It looks better on-screen but inserting graphics into
e-mail doesn't always work well for communities with *nix, Windows, and
Mac members.
the_thread 0x00487eb0 { ER5 } (Thread_Control*)
* { 00487EB0 } (Thread_Control)
Object { 00487EB0 } (Objects_Control)
current_state H'00000001 { 00487EC0 } (States_Control)
current_priority H'000000ff { 00487EC4 }
(Priority_Control)
real_priority H'000000ff { 00487EC8 }
(Priority_Control)
resource_count H'00000000 { 00487ECC } (uint32_t)
Wait { 00487ED0 } (Thread_Wait_information)
Timer { 00487EF8 } (Watchdog_Control)
suspend_count H'00000000 { 00487F20 } (uint32_t)
is_global H'b0b0b0b0 { 00487F24 } (boolean)
do_post_task_switch_extension H'b0b0b0b0 { 00487F28 }
(boolean)
is_preemptible H'b0b0b0b0 { 00487F2C } (boolean)
rtems_ada_self 0x00000000 { 00487F30 } (void*)
cpu_time_budget H'b0b0b0b0 { 00487F34 } (uint32_t)
budget_algorithm H'b0b0 { 00487F38 }
(Thread_CPU_budget_algorithms)()
budget_callout { 00487F3C }
(Thread_CPU_budget_algorithm_callout)
cpu_time_used { 00487F40 } (struct timespec)
ready 0x00487e84 { 00487F48 } (Chain_Control*)
Priority_map { 00487F4C } (Priority_Information)
Start { 00487F58 } (Thread_Start_information)
Registers { 00487F8C } (Context_Control)
libc_reent 0x00000000 { 00487FB4 } (struct _reent*)
API_Extensions { 00487FB8 } (void[3]*)
extensions 0x00000000 { 00487FC4 } (void**)
task_variables 0xb0b0b0b0 { 00487FC8 }
(rtems_task_variable_t*)
------------------------------------------------------------
"Unix is user friendly, it's just Steven Grunza
particular about with whom it voice: (856) 787 - 2759
makes friends." fax: (856) 866 - 2033
- Unknown mailto:grunza at ulticom.com
flames:/dev/null
------------------------------------------------------------
More information about the users
mailing list