Hi Sebastian, Thank you for reproducing this. I added the floating point attribute to my demo tasks and it works as expected. I was just about to try Chris' suggestion of using GDB when I saw this message.
I encountered the same problem building the examples with waf. Regards, Alan On Thu, Apr 9, 2020 at 7:51 AM Sebastian Huber <sebastian.hu...@embedded-brains.de> wrote: > > Hello Alan, > > On 08/04/2020 17:48, Alan Cudmore wrote: > > Regarding the LEON3: I am noticing something with the release that I > > don't understand yet. > > > > I am able to build and run a number of ARM BSPs including raspberrypi, > > raspberrypi2, beagleboneblack, and xlinx_zynq_a9_qemu > > When I build my application for the leon3, most of it appears to work, > > but I have a task demo that crashes when I try to print a variable > > that is on the task stack. ( task ID, similar to what ticker does ) > > I went back and ran a number of the testsuite programs on both my > > patched QEMU and sparc-rtems5-sis with no problems. > > I then cloned the latest rtems-examples git repository and built the > > ticker examples using the (obsolete) Makefile. When built this way, > > the ticker program crashes as well on both QEMU and SIS. > > > > I'm trying to narrow down the differences by comparing the flags used > > to build the testsuite in the build tree vs. my applications and the > > rtems-examples repository. > > > > Should I try building the examples with waf? > > I was able to reproduce this issue. It seems to be a problem with the > use of the FPU in a non-FP task: > > Program received signal SIGTERM, Terminated. > syscall () at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/cpu/sparc/syscall.S:44 > 44 ta 0 ! syscall 1, halt with > %g1,%g2,%g3 info > (gdb) bt > #0 syscall () at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/cpu/sparc/syscall.S:44 > #1 0x4000f888 in _User_extensions_Fatal_visitor (executing=0x0, > arg=0x26, callouts=0x40020ca8 <_User_extensions_List+4>) at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/src/userextiterate.c:131 > #2 0x4001cdc4 in _CPU_Fatal_halt (source=10, source@entry=0, error=0, > error@entry=38) at > /home/EB/sebastian_h/src/rtems/c/src/lib/libbsp/sparc/leon3/../../../../../../bsps/sparc/leon3/start/bsp_fatal_halt.c:33 > #3 0x4000fb68 in _Terminate > (the_source=the_source@entry=INTERNAL_ERROR_CORE, the_error=38, > the_error@entry=0) at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/src/interr.c:44 > #4 0x4000fb7c in _Internal_error (core_error=0, > core_error@entry=INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT) at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/src/interr.c:52 > #5 0x40001664 in bsp_spurious_handler (trap=260, isf=0x40028518) at > /home/EB/sebastian_h/src/rtems/c/src/lib/libbsp/sparc/leon3/../../../../../../bsps/sparc/leon3/start/spurious.c:124 > #6 0x40012390 in pil_fixed () at > /home/EB/sebastian_h/src/rtems/c/src/../../cpukit/score/cpu/sparc/cpu_asm.S:592 > > It would be good to add support for the RTEMS Tester to the examples. > > I was not able to build the examples with waf: > > Waf: Entering directory > `/home/EB/sebastian_h/src/rtems-examples/build/sparc-rtems5-leon3' > [ 1/14] Compiling hello/hello_world_c/test.c > [ 2/14] Compiling hello/posix_hello_world/test.c > [ 3/14] Compiling hello/both_hello/test.c > [ 4/14] Compiling hello/both_hello/test.c > [ 5/14] Compiling hello/both_hello/test.c > [ 6/14] Linking > build/sparc-rtems5-leon3/hello/posix_hello_world/posix_hello.exe > [ 7/14] Linking build/sparc-rtems5-leon3/hello/hello_world_c/hello.exe > [ 8/14] Compiling build/sparc-rtems5-leon3/hello/both_hello/test.c.2.o > [ 9/14] Compiling build/sparc-rtems5-leon3/hello/both_hello/test.c.1.o > [10/14] Linking build/sparc-rtems5-leon3/hello/both_hello/both_hello.exe > [11/14] Compiling gdb/overwrite/rtems_init.c > [12/14] Compiling gdb/overwrite/overwrite.c > [13/14] Compiling filesystem/fat_ramdisk/rootfs/shell-init > [14/14] Linking build/sparc-rtems5-leon3/gdb/overwrite/overwrite.exe > [15/15] Compiling > build/sparc-rtems5-leon3/filesystem/fat_ramdisk/rootfs/shell-init > [16/16] Compiling > build/sparc-rtems5-leon3/filesystem/fat_ramdisk/fs-root.tar > [17/29] Compiling > build/sparc-rtems5-leon3/filesystem/fat_ramdisk/fs-root-tar.c > [18/29] Compiling filesystem/fat_ramdisk/init.c > [19/29] Compiling > build/sparc-rtems5-leon3/filesystem/fat_ramdisk/fs-root-tar.c > [20/29] Compiling filesystem/fat_ramdisk/init.c > [21/29] Compiling classic_api/classic_signal/test.c > [22/29] Compiling classic_api/triple_period/tasks.c > Waf: Leaving directory > `/home/EB/sebastian_h/src/rtems-examples/build/sparc-rtems5-leon3' > Build failed > Traceback (most recent call last): > File > "/home/EB/sebastian_h/src/rtems-examples/.waf-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", > line 190, in process > self.post_run() > File "/home/EB/sebastian_h/src/rtems-examples/rtems_waf/gccdeps.py", > line 144, in post_run > raise ValueError('could not find %r for %r' % (x, self)) > ValueError: could not find ['filesystem', 'fat_ramdisk', > 'fs-root-tar.h'] for > {task 140228625202304: c init.c -> init.c.6.o} > > Traceback (most recent call last): > File > "/home/EB/sebastian_h/src/rtems-examples/.waf-2.0.19-1f3c580272b15a03d2566843c5fe872a/waflib/Task.py", > line 190, in process > self.post_run() > File "/home/EB/sebastian_h/src/rtems-examples/rtems_waf/gccdeps.py", > line 144, in post_run > raise ValueError('could not find %r for %r' % (x, self)) > ValueError: could not find ['filesystem', 'fat_ramdisk', > 'fs-root-tar.h'] for > {task 140228625202904: c init.c -> init.c.5.o} > > This used to work some days ago. Maybe commit > 341747b0a03ffce9082ed84a94905cd9a3ea32fc cased this issue? > > _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel