About Chains in RTEMS

Richi Dubey richidubey at gmail.com
Fri Feb 26 04:44:32 UTC 2021


Thanks a lot! Your suggestion helps. I'll look if there is any place where
double insertion/extraction is taking place.

On Thu, Feb 25, 2021 at 8:57 PM Sebastian Huber <
sebastian.huber at embedded-brains.de> wrote:

> 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.huber at 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/
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20210226/a5e041f0/attachment-0001.html>


More information about the devel mailing list