<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jul 28, 2017 at 8:19 AM, Sebastian Huber <span dir="ltr"><<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 28/07/17 15:15, Denis Obrezkov wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
2017-07-28 14:56 GMT+02:00 Joel Sherrill <<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a> <mailto:<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a>>>:<span class="gmail-"><br>
<br>
    There is a debug option near the bottom of confdefs.h which you<br>
    can enable to generate a data structure filled in with various<br>
    values computed by confdefs. You can look at that in gdb without<br>
    loading it on the target.<br>
<br>
    It is probably worth it to look at that now and see what you spot.<br>
<br>
Okay, I'll try.<br>
<br>
<br>
    And a random thought.. what's the interrupt stack size and how is<br>
    it allocated? What are the port specific related macros set to?<br>
<br>
I don't completely understand what is the interrupt stack. Because, when an interrupt occurs,<br>
I save all registers and move the stack pointer, handle interrupt,<br>
</span></blockquote>
<br>
Now you handle the interrupt on the stack of the interrupted context (usually a thread). So, you must take this overhead into account for every thread. If you switch to an interrupt stack, then you only have to account for one interrupt frame per thread. If you support nested interrupts, you need even more space per thread without an interrupt stack.<br></blockquote><div><br></div><div>There are at least these settings plus the default interrupt stack size which can be </div><div>defined for each port:</div><div><br></div><div>/sparc64/rtems/score/cpu.h:#define CPU_HAS_SOFTWARE_INTERRUPT_STACK   TRUE</div><div>./sparc64/rtems/score/cpu.h:#define CPU_HAS_HARDWARE_INTERRUPT_STACK  FALSE</div><div>./sparc64/rtems/score/cpu.h:#define CPU_ALLOCATE_INTERRUPT_STACK      TRUE</div><div><br></div><div>Based on how you have the interrupt support configured, the last one trips generic  </div><div>code in score/src/isr.c to allocate memory for a dedicated interrupt stack.</div><div><br></div><div>But the confdefs.h debug trick should quickly give you some insight. Look for</div><div>CONFIGURE_CONFDEFS_DEBUG in confdefs.h to see what it turns on<br></div><div>for helping you debug.</div><div><br></div><div>--joel</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">
restore registers and move stack<br>
pointer back.<br>
-- <br>
Regards, Denis Obrezkov<br>
<br>
<br></span><span class="gmail-">
______________________________<wbr>_________________<br>
devel mailing list<br>
<a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman<wbr>/listinfo/devel</a><br>
</span></blockquote><span class="gmail-HOEnZb"><font color="#888888">
<br>
-- <br>
Sebastian Huber, embedded brains GmbH<br>
<br>
Address : Dornierstr. 4, D-82178 Puchheim, Germany<br>
Phone   : <a href="tel:%2B49%2089%20189%2047%2041-16" value="+4989189474116" target="_blank">+49 89 189 47 41-16</a><br>
Fax     : <a href="tel:%2B49%2089%20189%2047%2041-09" value="+4989189474109" target="_blank">+49 89 189 47 41-09</a><br>
E-Mail  : <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brain<wbr>s.de</a><br>
PGP     : Public key available on request.<br>
<br>
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.<br>
<br>
</font></span></blockquote></div><br></div></div>