<div dir="ltr">Thanks a lot! Your suggestion helps. I'll look if there is any place where double insertion/extraction is taking place. </div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Feb 25, 2021 at 8:57 PM Sebastian Huber <<a href="mailto:sebastian.huber@embedded-brains.de">sebastian.huber@embedded-brains.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 25/02/2021 10:47, Richi Dubey wrote:<br>
<br>
> Hi,<br>
><br>
> When I am debugging the call to _Chain_Append_unprotected (from line <br>
> 92 <br>
> <<a href="https://git.rtems.org/rtems/tree/testsuites/sptests/sp02/init.c#n92" rel="noreferrer" target="_blank">https://git.rtems.org/rtems/tree/testsuites/sptests/sp02/init.c#n92</a>> of <br>
> sp02, rtems_task_delete -> _Thread_Close ->...->_Thread_Cancel -> ... <br>
> ->_Scheduler_Unblock -> ... _Scheduler_strong_APA_Insert_ready <br>
> -> _Chain_Append_unprotected), I see a weird chain behavior where <br>
> there's some kind of cycle:<br>
><br>
> (gdb) p _Chain_Tail(the_chain)<br>
> $20 = (Chain_Node *) 0x200768 <br>
> <_Configuration_Scheduler_strong_APA_dflt+40><br>
> (gdb) p _Chain_Tail(the_chain)->previous<br>
> $21 = (Chain_Node *) 0x2014e8 <_RTEMS_tasks_Objects+2024><br>
> (gdb) p (_Chain_Tail(the_chain)->previous)->previous<br>
> $22 = (Chain_Node *) 0x200fe0 <_RTEMS_tasks_Objects+736><br>
> (gdb) p ((_Chain_Tail(the_chain)->previous)->previous)->previous<br>
> $23 = (Chain_Node *) 0x2014e8 <_RTEMS_tasks_Objects+2024><br>
> (gdb) p <br>
> (((_Chain_Tail(the_chain)->previous)->previous)->previous)->previous<br>
> $24 = (Chain_Node *) 0x200fe0 <_RTEMS_tasks_Objects+736><br>
><br>
><br>
> sp02 is a single processor test and I am trying to run it on the <br>
> Strong APA SMP scheduler. Can someone please give an insight into what <br>
> might be causing this? The Strong APA scheduler does not affect the <br>
> functioning of the chain, it only uses the chain using standard <br>
> function headers defined in chain.h<br>
Cycles in a chain may be caused by double insertions or extractions. I <br>
would enable RTEMS_DEBUG since it adds assertions for these cases.<br>
<br>
-- <br>
embedded brains GmbH<br>
Herr Sebastian HUBER<br>
Dornierstr. 4<br>
82178 Puchheim<br>
Germany<br>
email: <a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>
phone: +49-89-18 94 741 - 16<br>
fax:   +49-89-18 94 741 - 08<br>
<br>
Registergericht: Amtsgericht München<br>
Registernummer: HRB 157899<br>
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler<br>
Unsere Datenschutzerklärung finden Sie hier:<br>
<a href="https://embedded-brains.de/datenschutzerklaerung/" rel="noreferrer" target="_blank">https://embedded-brains.de/datenschutzerklaerung/</a><br>
<br>
</blockquote></div>