INTERNAL_ERROR_THREAD_EXITTED, but what thread ?
Matthew J Fletcher
amimjf at gmail.com
Fri Mar 2 09:18:56 UTC 2018
Hi,
It looks like the context has already changed by the time the
thread_exitted extension is called, so RTEMS_SELF does not get what you
want.
The rtems_tcb structure however contains 'Object->id' and 'Object->name'
which show the previous task running.
On 2 March 2018 at 06:39, Christian Mauderer <
christian.mauderer at embedded-brains.de> wrote:
> Am 02.03.2018 um 02:59 schrieb Joel Sherrill:
> >
> >
> > On Mar 1, 2018 11:03 AM, "Matthew J Fletcher" <amimjf at gmail.com
> > <mailto:amimjf at gmail.com>> wrote:
> >
> > Hi,
> >
> > So if a thread returns without deleting itself you get the following
> > error,.. but may i make the observation that it might be more
> > helpful print the rtems_name of said thread ?
> >
> > *** FATAL ***
> > fatal source: 0 (INTERNAL_ERROR_CORE)
> > fatal code: 5 (INTERNAL_ERROR_THREAD_EXITTED)
> > RTEMS version: 5.0.0
> > RTEMS tools: 7.2.1 20171120 [gcc-7-branch revision
> > 9785e4dda79:9e029c9094e:b2ec65b6e88dcbf61ac59114605113e1136f2ac5]
> >
> >
> > Please file a ticket. There may be more cases where an id and name are
> > useful.
> >
> >
>
> Hello Matthew,
>
> if you need some quick solution: This should be possible with a user
> thread extension. Without testing, it should be something like the
> following:
>
> ----
> static void thread_exitted_print_info(rtems_tcb *tcb)
> {
> char name[5];
> char *rv;
>
> rv = rtems_object_get_name(RTEMS_SELF, sizeof(name), name);
>
> if (rv) {
> printk("Thread exited: %s\n", rv);
> } else {
> printk("Thread exited but couldn't get name.\n");
> }
> }
>
> /* In your configuration: */
> #define CONFIGURE_INITIAL_EXTENSIONS \
> { .thread_exited = thread_exitted_print_info }
> ----
>
> Regards
>
> Christian
>
> --
> --------------------------------------------
> embedded brains GmbH
> Herr Christian Mauderer
> Dornierstr. 4
> D-82178 Puchheim
> Germany
> email: christian.mauderer at embedded-brains.de
> Phone: +49-89-18 94 741 - 18
> Fax: +49-89-18 94 741 - 08
> PGP: Public key available on request.
>
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
>
--
regards
---
Matthew J Fletcher
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20180302/68e33471/attachment-0002.html>
More information about the users
mailing list