On Thu, Jul 27, 2017 at 7:43 PM, Denis Obrezkov <denisobrez...@gmail.com> wrote: > I didn't want to enable optimization because I was afraid of new mistakes. > So, I enabled -Os and now I have: > _Terminate (the_source=the_source@entry=INTERNAL_ERROR_CORE, > the_error=the_error@entry=3) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/interr.c:44 > 44 _CPU_Fatal_halt( the_source, the_error ); > (gdb) i s > #0 _Terminate (the_source=the_source@entry=INTERNAL_ERROR_CORE, > the_error=the_error@entry=3) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/interr.c:44 > #1 0x20401672 in _Internal_error > (core_error=core_error@entry=INTERNAL_ERROR_WORKSPACE_ALLOCATION) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/interr.c:51 > #2 0x20404968 in _Workspace_Allocate_or_fatal_error (size=<optimized out>) > at ../../cpukit/../../../hifive1/lib/include/rtems/score/heapimpl.h:137 > #3 0x20401f76 in _Objects_Extend_information (information=0x80000ad4 > <_RTEMS_tasks_Information>) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/objectextendinformation.c:70 > #4 0x20402110 in _Objects_Do_initialize_information > (information=information@entry=0x80000ad4 <_RTEMS_tasks_Information>, > the_api=the_api@entry=OBJECTS_CLASSIC_API, > the_class=<optimized out>, maximum=maximum@entry=124, size=<optimized > out>, is_string=<optimized out>, > maximum_name_length=maximum_name_length@entry=4) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/objectinitializeinformation.c:118 > #5 0x20402e3a in _Thread_Initialize_information > (information=information@entry=0x80000ad4 <_RTEMS_tasks_Information>, > the_api=the_api@entry=OBJECTS_CLASSIC_API, > the_class=the_class@entry=1, maximum=124, > is_string=is_string@entry=false, > maximum_name_length=maximum_name_length@entry=4) > at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/score/src/thread.c:57 > #6 0x20400ff8 in _RTEMS_tasks_Manager_initialization () at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/rtems/src/tasks.c:72 > #7 0x2040112e in rtems_initialize_executive () at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/../../cpukit/sapi/src/exinit.c:92 > #8 0x20400496 in boot_card (cmdline=<optimized out>) at > /home/reprofy/Projects/riscv/rtems/development/rtems/kernel/rtems-riscv/c/src/lib/libbsp/riscv32/hifive1/../../shared/bootcard.c:78 > > Though, the size of executable is much lower (almost two times), > but I get this mistake. And as for now I can't understand do I have the > error > due to optimization or has the optimization revealed another issue? >
Most likely it has revealed another issue. It appears that the workspace is out of room and the allocate request fails. This could be a problem in the application's configuration (CONFIGURE_XXX macros) or is another side-effect of the memory constraints on your device. How much workspace is there available in your linker script, can you tell? Are you using unified heap and workspace? > -- > Regards, Denis Obrezkov > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel