Also, it's weird that neither of the code breaks on setting a breakpoint at _Thread_Load_environment for the threads that have 'Tasks' as their entry function.
On Fri, Dec 11, 2020 at 1:07 PM Richi Dubey <richidu...@gmail.com> wrote: > Thanks for your replies. > > Great suggestion about setting up a breakpoint at _Thread_Handler. After > setting the breakpoint, the code run by Strong_APA does not break, whereas > the default scheduler's code does break: > > > ------------------------ > Default Scheduler (That executes correctly without error): > > Thread 1 hit Breakpoint 7, Tasks (argument=0) at > /home/richi/quick-start/src/rtems/c/src/../../testsuites/tmtests/tm24/task1.c:110 > 110 Task_count++; > (gdb) b _Thread_Handler > Breakpoint 8 at 0x10a67e: file > /home/richi/quick-start/src/rtems/c/src/../../cpukit/score/src/threadhandler.c, > line 88. > (gdb) c > Continuing. > > Thread 1 hit Breakpoint 8, _Thread_Handler () at > /home/richi/quick-start/src/rtems/c/src/../../cpukit/score/src/threadhandler.c:88 > 88 executing = _Thread_Executing; > (gdb) > Continuing. > > Thread 1 hit Breakpoint 7, Tasks (argument=0) at > /home/richi/quick-start/src/rtems/c/src/../../testsuites/tmtests/tm24/task1.c:110 > 110 Task_count++; > ------------------------ > > Strong APA execution (The execution that fails/give error): > ------------------------ > Thread 1 hit Breakpoint 7, Tasks (argument=0) at > /home/richi/quick-start/src/rtems/c/src/../../testsuites/tmtests/tm24/task1.c:110 > 110 Task_count++; > (gdb) b _Thread_Handler > Breakpoint 8 at 0x1086b2: file > /home/richi/quick-start/src/rtems/c/src/../../cpukit/score/src/threadhandler.c, > line 88. > (gdb) c > Continuing. > > Thread 1 hit Breakpoint 5, _Terminate > > ------------------------ > > I am going to investigate the scheduler's role in this. > > Thanks, > Richi. > > On Mon, Dec 7, 2020 at 11:09 AM Sebastian Huber < > sebastian.hu...@embedded-brains.de> wrote: > >> On 05/12/2020 07:13, Richi Dubey wrote: >> >> > >> > The stack trace for the thread looks like this: >> > >> > Tasks (entry function) -> rtems_task_wake_after >> > ->_Thread_Dispatch_direct -> _Thread_Do_dispatch (where the >> > _Context_switch function call lies), how can then the heir thread >> > start executing from the _Thread_Handler? I do not see it in the trace >> > at all. >> The context of new threads is set up by _Thread_Load_environment(). >> >> -- >> 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