On 25/02/2021 10:47, Richi Dubey wrote:
Hi,
When I am debugging the call to _Chain_Append_unprotected (from line
92
<https://git.rtems.org/rtems/tree/testsuites/sptests/sp02/init.c#n92> of
sp02, rtems_task_delete -> _Thread_Close ->...->_Thread_Cancel -> ...
->_Scheduler_Unblock -> ... _Scheduler_strong_APA_Insert_ready
-> _Chain_Append_unprotected), I see a weird chain behavior where
there's some kind of cycle:
(gdb) p _Chain_Tail(the_chain)
$20 = (Chain_Node *) 0x200768
<_Configuration_Scheduler_strong_APA_dflt+40>
(gdb) p _Chain_Tail(the_chain)->previous
$21 = (Chain_Node *) 0x2014e8 <_RTEMS_tasks_Objects+2024>
(gdb) p (_Chain_Tail(the_chain)->previous)->previous
$22 = (Chain_Node *) 0x200fe0 <_RTEMS_tasks_Objects+736>
(gdb) p ((_Chain_Tail(the_chain)->previous)->previous)->previous
$23 = (Chain_Node *) 0x2014e8 <_RTEMS_tasks_Objects+2024>
(gdb) p
(((_Chain_Tail(the_chain)->previous)->previous)->previous)->previous
$24 = (Chain_Node *) 0x200fe0 <_RTEMS_tasks_Objects+736>
sp02 is a single processor test and I am trying to run it on the
Strong APA SMP scheduler. Can someone please give an insight into what
might be causing this? The Strong APA scheduler does not affect the
functioning of the chain, it only uses the chain using standard
function headers defined in chain.h
Cycles in a chain may be caused by double insertions or extractions. I
would enable RTEMS_DEBUG since it adds assertions for these cases.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax: +49-89-18 94 741 - 08
Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel