On 19 February 2013 15:21, Joel Sherrill <span dir="ltr"><<a href="mailto:joel.sherrill@oarcorp.com" target="_blank">joel.sherrill@oarcorp.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On 2/19/2013 9:16 AM, Gedare Bloom wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Some BSPs also will unify the workspace and heap, in which case I<br>
believe initialization only happens once.<br>
</blockquote></div>
This is an application time configure option.<br>
<br>
Some BSPs on hardware with non-contiguous address spaces<br>
may assign one to workspace and one to heap. Sebastian added<br>
that for the plethora of CPUs with on-chip RAM areas and off-chip<br>
and slower RAM.<br>
<br>
Most likely, there is a mistake in the memory map as you<br>
suggested in the previous email.<br>
<br>
There are some debug prints in bspgetworkarea and other places<br>
which can give hints but definitely check the address ranges passed<br>
to the two invocations, where you have reserved the stack you<br>
are initializing the system on, and your .bss section. Sounds like<br>
you have an overlap or are pointing to non-existent memory<br>
<br>
--joel<div class="HOEnZb"><div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Tue, Feb 19, 2013 at 10:15 AM, Gedare Bloom <<a href="mailto:gedare@rtems.org" target="_blank">gedare@rtems.org</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Heap Initialize is reused to initialize the RTEMS workspace, and the C<br>
program heap. This is normal when the workspace and heap are separate<br>
(non-unified). Check that your workspace and heap are indeed distinct<br>
in your memory layout (linkcmds) and non-overlapping. Crashes can<br>
happen when they overlap or when the malloc heap pointer is bogus.<br>
<br>
-Gedare<br>
<br>
On Tue, Feb 19, 2013 at 7:05 AM, Matthew J Fletcher <<a href="mailto:amimjf@gmail.com" target="_blank">amimjf@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
I am not passing any particularly non-standard configure options,<br>
"--disable-cxx --disable-posix --disable-itron --enable-networking<br>
--target=arm-rtemseabi4.11 --enable-rtemsbsp=rtl22xx_t".<br>
<br>
1st callstack<br>
<br>
boot_card()<br>
-> rtems_initialize_data_<u></u>structures()<br>
   -> _Workspace_Handler_<u></u>initialization()<br>
     -> _Heap_Initialize()<br>
<br>
2nd callstack<br>
<br>
boot_card()<br>
-> bootcard_bsp_libc_helper()<br>
   -> bsp_libc_init()<br>
     -> RTEMS_Malloc_Initalize()<br>
       -> _Heap_Initalize()<br>
<br>
Is this BSP not configured quite right ?<br>
<br>
<br>
regards<br>
---<br>
Matthew J Fletcher<br>
<br>
<br>
______________________________<u></u>_________________<br>
rtems-users mailing list<br>
<a href="mailto:rtems-users@rtems.org" target="_blank">rtems-users@rtems.org</a><br>
<a href="http://www.rtems.org/mailman/listinfo/rtems-users" target="_blank">http://www.rtems.org/mailman/<u></u>listinfo/rtems-users</a><br>
<br>
</blockquote></blockquote>
______________________________<u></u>_________________<br>
rtems-users mailing list<br>
<a href="mailto:rtems-users@rtems.org" target="_blank">rtems-users@rtems.org</a><br>
<a href="http://www.rtems.org/mailman/listinfo/rtems-users" target="_blank">http://www.rtems.org/mailman/<u></u>listinfo/rtems-users</a><br>
</blockquote>
<br>
<br></div></div><span class="HOEnZb"><font color="#888888">
-- <br>
Joel Sherrill, Ph.D.             Director of Research & Development<br>
joel.sherrill@OARcorp.com        On-Line Applications Research<br>
Ask me about RTEMS: a free RTOS  Huntsville AL 35805<br>
Support Available                (256) 722-9985<br>
<br>
</font></span></blockquote></div><br>Thanks for the tips, using the debugger i can see that the workspace is setup as:<br><br>starting_address 0x81486ab0<br>size 0xffff<br><br>and the RTEMS heap:<br><br>starting address 0x81496aaf (so on by 0xffff)<br>
size oxffff<br><br>that looks ok to me, interesting the actual reason for the crash is that the Heap_Control structure is at 0xffffffffff, so we error when the first variable is assigned to it.<br><br>It looks like this comes from RTEMS_Malloc_Heap in confdefs.h, so i've no idea how it could be -1, i will step through the startup code and watch so see where/if it gets stamped on.<br>
<br><div><br>regards</div><div>---</div><div>Matthew J Fletcher</div><br>