Hello Everyone, I own a qnap ts-119pII with a similar cpu. See attached file with several debugging attempts.
With my limited assembly knowledge I got to this instruction, where the backtrace command still shows all of the stack: (gdb) bt #0 0x03718a2c in stg_returnToStackTop$def () #1 0x03700118 in schedule () #2 0x03701670 in scheduleWaitThread () #3 0x037183a8 in ioManagerStart () #4 0x036fe9ac in hs_init_ghc () #5 0x0370df40 in hs_main () #6 0x0000d838 in main (argc=2, argv=0xbefff6c4) at /tmp/ghc23822_0/ghc_295.c:9 Then execution continues in stg_enter_info$def and stg_ap_v_info$def. In the latter following instruction is reached: 0x0371ef80 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef80 <stg_ap_v_info$def+292>: ldrsh r2, [r0, #-10] (gdb) nexti 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) nexti Thread 1 "git-annex" received signal SIGILL, Illegal instruction. 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) bt #0 0x0371ef84 in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) If I read [1] right, then the UXTH instruction is just supported on ARMv6 or later. Kind regards, Bernhard [1] http://infocenter.arm.com/help/topic/com.arm.doc.dui0489i/CIHHJCFE.html
apt install systemd-coredump gdb export PKG="git-annex git-annex-dbgsym"; apt install $PKG; apt-mark auto $PKG export PKG="dpkg-dev devscripts"; apt install $PKG; apt-mark auto $PKG # apt build-dep git-annex mkdir source/git-annex/orig -p cd source/git-annex/orig apt source git-annex cd mkdir source/ghc/orig -p cd source/ghc/orig apt source ghc cd root@debian:~# uname -a Linux debian 4.19.0-1-marvell #1 Debian 4.19.12-1 (2018-12-22) armv5tel GNU/Linux root@debian:~# dpkg -l | grep git-annex ii git-annex 7.20190122-2 armel manage files with git, without checking their contents into git benutzer@debian:~$ git-annex --help Ungültiger Maschinenbefehl (Speicherabzug geschrieben) root@debian:~# coredumpctl list TIME PID UID GID SIG COREFILE EXE Thu 2019-01-31 19:08:59 CET 1615 1001 1001 4 present /usr/bin/git-annex root@debian:~# coredumpctl gdb 1615 PID: 1615 (git-annex) UID: 1001 (benutzer) GID: 1001 (benutzer) Signal: 4 (ILL) Timestamp: Thu 2019-01-31 19:08:58 CET (2min 23s ago) Command Line: git-annex --help Executable: /usr/bin/git-annex Control Group: /user.slice/user-1001.slice/session-3.scope Unit: session-3.scope Slice: user-1001.slice Session: 3 Owner UID: 1001 (benutzer) Boot ID: 170c7ed05d0d4de4949a63c6e890ae0b Machine ID: d2fd6eda07e4485089c59680615933f6 Hostname: debian Storage: /var/lib/systemd/coredump/core.git-annex.1001.170c7ed05d0d4de4949a63c6e890ae0b.1615.1548958138000000.lz4 Message: Process 1615 (git-annex) of user 1001 dumped core. Stack trace of thread 1615: #0 0x000000000371ef84 n/a (git-annex) GNU gdb (Debian 8.2-1) 8.2 Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "arm-linux-gnueabi". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/bin/git-annex...Reading symbols from /usr/lib/debug/.build-id/2e/b84d9cee7f3bfd1e0f737e7714c5ac7fc3ba48.debug...done. done. [New LWP 1615] [New LWP 1616] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1". Core was generated by `git-annex --help'. Program terminated with signal SIGILL, Illegal instruction. #0 0x0371ef84 in stg_ap_v_info$def () [Current thread is 1 (Thread 0xb6f1f830 (LWP 1615))] (gdb) bt #0 0x0371ef84 in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) benutzer@debian:~$ gdb -q -ex 'set width 0' -ex 'set pagination off' --args git-annex --help Reading symbols from git-annex...Reading symbols from /usr/lib/debug/.build-id/2e/b84d9cee7f3bfd1e0f737e7714c5ac7fc3ba48.debug...done. done. (gdb) b main Breakpoint 1 at 0xd79c: file /tmp/ghc23822_0/ghc_295.c, line 5. (gdb) run Starting program: /usr/bin/git-annex --help [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1". Breakpoint 1, main (argc=2, argv=0xbefff714) at /tmp/ghc23822_0/ghc_295.c:5 5 /tmp/ghc23822_0/ghc_295.c: Datei oder Verzeichnis nicht gefunden. (gdb) next 6 in /tmp/ghc23822_0/ghc_295.c (gdb) 8 in /tmp/ghc23822_0/ghc_295.c (gdb) 9 in /tmp/ghc23822_0/ghc_295.c (gdb) [New Thread 0xb42ff450 (LWP 1679)] Thread 1 "git-annex" received signal SIGILL, Illegal instruction. 0x0371ef84 in stg_ap_v_info$def () (gdb) bt #0 0x0371ef84 in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) kill Kill the program being debugged? (y or n) y [Inferior 1 (process 1680) killed] (gdb) q (gdb) b ghc_295.c:9 Breakpoint 2 at 0xd7f8: file /tmp/ghc23822_0/ghc_295.c, line 9. gdb -q \ -ex 'set width 0' \ -ex 'set pagination off' \ -ex 'display/i $pc' \ -ex 'b main' \ -ex 'run' \ -ex 'dele 1' \ -ex 'print schedule+1480' \ -ex 'b *$1' \ -ex 'cont' \ -ex 'stepi' \ -ex 'bt' \ --args git-annex --help hs_main+76 hs_init_ghc+520 ioManagerStart+88 scheduleWaitThread+152 schedule+1480 benutzer@debian:~$ gdb -q \ > -ex 'set width 0' \ > -ex 'set pagination off' \ > -ex 'display/i $pc' \ > -ex 'b main' \ > -ex 'run' \ > -ex 'dele 1' \ > -ex 'print schedule+1480' \ > -ex 'b *$1' \ > -ex 'cont' \ > -ex 'stepi' \ > -ex 'bt' \ > --args git-annex --help Reading symbols from git-annex...Reading symbols from /usr/lib/debug/.build-id/2e/b84d9cee7f3bfd1e0f737e7714c5ac7fc3ba48.debug...done. done. 1: x/i $pc <error: No registers.> Breakpoint 1 at 0xd79c: file /tmp/ghc23822_0/ghc_295.c, line 5. Starting program: /usr/bin/git-annex --help [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1". Breakpoint 1, main (argc=2, argv=0xbefff714) at /tmp/ghc23822_0/ghc_295.c:5 5 /tmp/ghc23822_0/ghc_295.c: Datei oder Verzeichnis nicht gefunden. 1: x/i $pc => 0xd79c <main>: ldr r5, [pc, #148] ; 0xd838 <main+156> $1 = (<text variable, no debug info> *) 0x3700114 <schedule+1480> Breakpoint 2 at 0x3700114 Continuing. [New Thread 0xb42ff450 (LWP 1936)] Thread 1 "git-annex" hit Breakpoint 2, 0x03700114 in schedule () 1: x/i $pc => 0x3700114 <schedule+1480>: bl 0x37083c8 <StgRun> 0x037083c8 in StgRun () 1: x/i $pc => 0x37083c8 <StgRun>: push {r4, r5, r6, r7, r8, r9, r10, lr} #0 0x037083c8 in StgRun () #1 0x03700118 in schedule () #2 0x03701670 in scheduleWaitThread () #3 0x037183a8 in ioManagerStart () #4 0x036fe9ac in hs_init_ghc () #5 0x0370df40 in hs_main () #6 0x0000d838 in main (argc=2, argv=0xbefff714) at /tmp/ghc23822_0/ghc_295.c:9 (gdb) nexti 0x037083cc in StgRun () 1: x/i $pc => 0x37083cc <StgRun+4>: push {r4, r5, r6, r7, r8, r9, r10, r11, r12, lr} (gdb) 0x037083d0 in StgRun () 1: x/i $pc => 0x37083d0 <StgRun+8>: sub sp, sp, #8192 ; 0x2000 (gdb) 0x037083d4 in StgRun () 1: x/i $pc => 0x37083d4 <StgRun+12>: mov r4, r1 (gdb) 0x037083d8 in StgRun () 1: x/i $pc => 0x37083d8 <StgRun+16>: bx r0 (gdb) 0x03718a1c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a1c <stg_returnToStackTop$def>: ldr r6, [r4, #812] ; 0x32c (gdb) 0x03718a20 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a20 <stg_returnToStackTop$def+4>: ldr r3, [r4, #820] ; 0x334 (gdb) 0x03718a24 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a24 <stg_returnToStackTop$def+8>: mov r1, #0 (gdb) 0x03718a28 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a28 <stg_returnToStackTop$def+12>: ldr r2, [r6, #12] (gdb) 0x03718a2c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a2c <stg_returnToStackTop$def+16>: add r11, r2, #100 ; 0x64 (gdb) 0x03718a30 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a30 <stg_returnToStackTop$def+20>: ldr r5, [r2, #12] (gdb) 0x03718a34 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a34 <stg_returnToStackTop$def+24>: str r1, [r4, #828] ; 0x33c (gdb) 0x03718a38 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a38 <stg_returnToStackTop$def+28>: ldr r1, [r3] (gdb) 0x03718a3c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a3c <stg_returnToStackTop$def+32>: ldr r0, [r3, #4] (gdb) 0x03718a40 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a40 <stg_returnToStackTop$def+36>: ldr r3, [r3, #28] (gdb) 0x03718a44 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a44 <stg_returnToStackTop$def+40>: add r3, r1, r3, lsl #12 (gdb) 0x03718a48 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a48 <stg_returnToStackTop$def+44>: sub r3, r3, #1 (gdb) 0x03718a4c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a4c <stg_returnToStackTop$def+48>: str r3, [r4, #804] ; 0x324 (gdb) 0x03718a50 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a50 <stg_returnToStackTop$def+52>: ldrd r8, [r6, #64] ; 0x40 (gdb) 0x03718a54 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a54 <stg_returnToStackTop$def+56>: sub r3, r0, r1 (gdb) 0x03718a58 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a58 <stg_returnToStackTop$def+60>: adds r8, r8, r3 (gdb) 0x03718a5c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a5c <stg_returnToStackTop$def+64>: adc r9, r9, #0 (gdb) 0x03718a60 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a60 <stg_returnToStackTop$def+68>: strd r8, [r6, #64] ; 0x40 (gdb) 0x03718a64 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a64 <stg_returnToStackTop$def+72>: sub r6, r0, #4 (gdb) 0x03718a68 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a68 <stg_returnToStackTop$def+76>: ldr r0, [r5] (gdb) 0x03718a6c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a6c <stg_returnToStackTop$def+80>: bx r0 (gdb) 0x0371e0cc in stg_enter_info$def () 1: x/i $pc => 0x371e0cc <stg_enter_info$def>: ldr r7, [r5, #4] (gdb) 0x0371e0d0 in stg_enter_info$def () 1: x/i $pc => 0x371e0d0 <stg_enter_info$def+4>: tst r7, #3 (gdb) 0x0371e0d4 in stg_enter_info$def () 1: x/i $pc => 0x371e0d4 <stg_enter_info$def+8>: beq 0x371e0ec <stg_enter_info$def+32> (gdb) 0x0371e0ec in stg_enter_info$def () 1: x/i $pc => 0x371e0ec <stg_enter_info$def+32>: ldr r0, [r7] (gdb) 0x0371e0f0 in stg_enter_info$def () 1: x/i $pc => 0x371e0f0 <stg_enter_info$def+36>: ldrsh r3, [r0, #-4] (gdb) 0x0371e0f4 in stg_enter_info$def () 1: x/i $pc => 0x371e0f4 <stg_enter_info$def+40>: sub r2, r3, #27 (gdb) 0x0371e0f8 in stg_enter_info$def () 1: x/i $pc => 0x371e0f8 <stg_enter_info$def+44>: cmp r2, #2 (gdb) 0x0371e0fc in stg_enter_info$def () 1: x/i $pc => 0x371e0fc <stg_enter_info$def+48>: bcc 0x371e0dc <stg_enter_info$def+16> (gdb) 0x0371e100 in stg_enter_info$def () 1: x/i $pc => 0x371e100 <stg_enter_info$def+52>: cmp r3, #25 (gdb) 0x0371e104 in stg_enter_info$def () 1: x/i $pc => 0x371e104 <stg_enter_info$def+56>: bhi 0x371e124 <stg_enter_info$def+88> (gdb) 0x0371e108 in stg_enter_info$def () 1: x/i $pc => 0x371e108 <stg_enter_info$def+60>: mov r2, #32512 ; 0x7f00 (gdb) 0x0371e10c in stg_enter_info$def () 1: x/i $pc => 0x371e10c <stg_enter_info$def+64>: mov r1, #1 (gdb) 0x0371e110 in stg_enter_info$def () 1: x/i $pc => 0x371e110 <stg_enter_info$def+68>: orr r2, r2, #41943040 ; 0x2800000 (gdb) 0x0371e114 in stg_enter_info$def () 1: x/i $pc => 0x371e114 <stg_enter_info$def+72>: tst r2, r1, lsl r3 (gdb) 0x0371e118 in stg_enter_info$def () 1: x/i $pc => 0x371e118 <stg_enter_info$def+76>: beq 0x371e124 <stg_enter_info$def+88> (gdb) 0x0371e11c in stg_enter_info$def () 1: x/i $pc => 0x371e11c <stg_enter_info$def+80>: ldr r0, [r5, #8]! (gdb) 0x0371e120 in stg_enter_info$def () 1: x/i $pc => 0x371e120 <stg_enter_info$def+84>: bx r0 (gdb) 0x0371ee5c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee5c <stg_ap_v_info$def>: mov r3, r6 (gdb) 0x0371ee60 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee60 <stg_ap_v_info$def+4>: b 0x371ee68 <stg_ap_v_info$def+12> (gdb) 0x0371ee68 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee68 <stg_ap_v_info$def+12>: and r6, r7, #3 (gdb) 0x0371ee6c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee6c <stg_ap_v_info$def+16>: cmp r6, #1 (gdb) 0x0371ee70 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee70 <stg_ap_v_info$def+20>: beq 0x371ef70 <stg_ap_v_info$def+276> (gdb) 0x0371ee74 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee74 <stg_ap_v_info$def+24>: bic r7, r7, #3 (gdb) 0x0371ee78 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee78 <stg_ap_v_info$def+28>: ldr r0, [r7] (gdb) 0x0371ee7c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee7c <stg_ap_v_info$def+32>: ldrsh r6, [r0, #-4] (gdb) 0x0371ee80 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee80 <stg_ap_v_info$def+36>: sub r6, r6, #8 (gdb) 0x0371ee84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee84 <stg_ap_v_info$def+40>: cmp r6, #50 ; 0x32 (gdb) 0x0371ee88 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee88 <stg_ap_v_info$def+44>: bhi 0x371f0c4 <stg_ap_v_info$def+616> (gdb) 0x0371ee8c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee8c <stg_ap_v_info$def+48>: add r2, pc, #0 (gdb) 0x0371ee90 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee90 <stg_ap_v_info$def+52>: ldr pc, [r2, r6, lsl #2] (gdb) 0x0371ef80 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef80 <stg_ap_v_info$def+292>: ldrsh r2, [r0, #-10] (gdb) 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) Thread 1 "git-annex" received signal SIGILL, Illegal instruction. 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) bt #0 0x0371ef84 in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) gdb -q \ -ex 'set width 0' \ -ex 'set pagination off' \ -ex 'directory /home/benutzer/source/git-annex/orig/git-annex-7.20190122' \ -ex 'display/i $pc' \ -ex 'b main' \ -ex 'run' \ -ex 'dele 1' \ -ex 'print stg_returnToStackTop$def+16' \ -ex 'b *$1' \ -ex 'cont' \ --args git-annex --help benutzer@debian:~$ gdb -q \ > -ex 'set width 0' \ > -ex 'set pagination off' \ > -ex 'directory /home/benutzer/source/git-annex/orig/git-annex-7.20190122' > \ > -ex 'display/i $pc' \ > -ex 'b main' \ > -ex 'run' \ > -ex 'dele 1' \ > -ex 'print stg_returnToStackTop$def+16' \ > -ex 'b *$1' \ > -ex 'cont' \ > --args git-annex --help Reading symbols from git-annex...Reading symbols from /usr/lib/debug/.build-id/2e/b84d9cee7f3bfd1e0f737e7714c5ac7fc3ba48.debug...done. done. Source directories searched: /home/benutzer/source/git-annex/orig/git-annex-7.20190122:$cdir:$cwd 1: x/i $pc <error: No registers.> Breakpoint 1 at 0xd79c: file /tmp/ghc23822_0/ghc_295.c, line 5. Starting program: /usr/bin/git-annex --help [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1". Breakpoint 1, main (argc=2, argv=0xbefff6c4) at /tmp/ghc23822_0/ghc_295.c:5 5 /tmp/ghc23822_0/ghc_295.c: Datei oder Verzeichnis nicht gefunden. 1: x/i $pc => 0xd79c <main>: ldr r5, [pc, #148] ; 0xd838 <main+156> $1 = (<text variable, no debug info> *) 0x3718a2c <stg_returnToStackTop$def+16> Breakpoint 2 at 0x3718a2c Continuing. [New Thread 0xb42ff450 (LWP 2031)] Thread 1 "git-annex" hit Breakpoint 2, 0x03718a2c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a2c <stg_returnToStackTop$def+16>: add r11, r2, #100 ; 0x64 (gdb) bt #0 0x03718a2c in stg_returnToStackTop$def () #1 0x03700118 in schedule () #2 0x03701670 in scheduleWaitThread () #3 0x037183a8 in ioManagerStart () #4 0x036fe9ac in hs_init_ghc () #5 0x0370df40 in hs_main () #6 0x0000d838 in main (argc=2, argv=0xbefff6c4) at /tmp/ghc23822_0/ghc_295.c:9 (gdb) nexti 0x03718a30 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a30 <stg_returnToStackTop$def+20>: ldr r5, [r2, #12] (gdb) bt #0 0x03718a30 in stg_returnToStackTop$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) nexti 0x03718a34 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a34 <stg_returnToStackTop$def+24>: str r1, [r4, #828] ; 0x33c (gdb) 0x03718a38 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a38 <stg_returnToStackTop$def+28>: ldr r1, [r3] (gdb) 0x03718a3c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a3c <stg_returnToStackTop$def+32>: ldr r0, [r3, #4] (gdb) 0x03718a40 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a40 <stg_returnToStackTop$def+36>: ldr r3, [r3, #28] (gdb) 0x03718a44 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a44 <stg_returnToStackTop$def+40>: add r3, r1, r3, lsl #12 (gdb) 0x03718a48 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a48 <stg_returnToStackTop$def+44>: sub r3, r3, #1 (gdb) 0x03718a4c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a4c <stg_returnToStackTop$def+48>: str r3, [r4, #804] ; 0x324 (gdb) 0x03718a50 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a50 <stg_returnToStackTop$def+52>: ldrd r8, [r6, #64] ; 0x40 (gdb) 0x03718a54 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a54 <stg_returnToStackTop$def+56>: sub r3, r0, r1 (gdb) 0x03718a58 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a58 <stg_returnToStackTop$def+60>: adds r8, r8, r3 (gdb) 0x03718a5c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a5c <stg_returnToStackTop$def+64>: adc r9, r9, #0 (gdb) 0x03718a60 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a60 <stg_returnToStackTop$def+68>: strd r8, [r6, #64] ; 0x40 (gdb) 0x03718a64 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a64 <stg_returnToStackTop$def+72>: sub r6, r0, #4 (gdb) 0x03718a68 in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a68 <stg_returnToStackTop$def+76>: ldr r0, [r5] (gdb) 0x03718a6c in stg_returnToStackTop$def () 1: x/i $pc => 0x3718a6c <stg_returnToStackTop$def+80>: bx r0 (gdb) 0x0371e0cc in stg_enter_info$def () 1: x/i $pc => 0x371e0cc <stg_enter_info$def>: ldr r7, [r5, #4] (gdb) bt #0 0x0371e0cc in stg_enter_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) nexti 0x0371e0d0 in stg_enter_info$def () 1: x/i $pc => 0x371e0d0 <stg_enter_info$def+4>: tst r7, #3 (gdb) 0x0371e0d4 in stg_enter_info$def () 1: x/i $pc => 0x371e0d4 <stg_enter_info$def+8>: beq 0x371e0ec <stg_enter_info$def+32> (gdb) 0x0371e0ec in stg_enter_info$def () 1: x/i $pc => 0x371e0ec <stg_enter_info$def+32>: ldr r0, [r7] (gdb) 0x0371e0f0 in stg_enter_info$def () 1: x/i $pc => 0x371e0f0 <stg_enter_info$def+36>: ldrsh r3, [r0, #-4] (gdb) 0x0371e0f4 in stg_enter_info$def () 1: x/i $pc => 0x371e0f4 <stg_enter_info$def+40>: sub r2, r3, #27 (gdb) 0x0371e0f8 in stg_enter_info$def () 1: x/i $pc => 0x371e0f8 <stg_enter_info$def+44>: cmp r2, #2 (gdb) 0x0371e0fc in stg_enter_info$def () 1: x/i $pc => 0x371e0fc <stg_enter_info$def+48>: bcc 0x371e0dc <stg_enter_info$def+16> (gdb) 0x0371e100 in stg_enter_info$def () 1: x/i $pc => 0x371e100 <stg_enter_info$def+52>: cmp r3, #25 (gdb) 0x0371e104 in stg_enter_info$def () 1: x/i $pc => 0x371e104 <stg_enter_info$def+56>: bhi 0x371e124 <stg_enter_info$def+88> (gdb) 0x0371e108 in stg_enter_info$def () 1: x/i $pc => 0x371e108 <stg_enter_info$def+60>: mov r2, #32512 ; 0x7f00 (gdb) 0x0371e10c in stg_enter_info$def () 1: x/i $pc => 0x371e10c <stg_enter_info$def+64>: mov r1, #1 (gdb) 0x0371e110 in stg_enter_info$def () 1: x/i $pc => 0x371e110 <stg_enter_info$def+68>: orr r2, r2, #41943040 ; 0x2800000 (gdb) 0x0371e114 in stg_enter_info$def () 1: x/i $pc => 0x371e114 <stg_enter_info$def+72>: tst r2, r1, lsl r3 (gdb) 0x0371e118 in stg_enter_info$def () 1: x/i $pc => 0x371e118 <stg_enter_info$def+76>: beq 0x371e124 <stg_enter_info$def+88> (gdb) 0x0371e11c in stg_enter_info$def () 1: x/i $pc => 0x371e11c <stg_enter_info$def+80>: ldr r0, [r5, #8]! (gdb) 0x0371e120 in stg_enter_info$def () 1: x/i $pc => 0x371e120 <stg_enter_info$def+84>: bx r0 (gdb) 0x0371ee5c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee5c <stg_ap_v_info$def>: mov r3, r6 (gdb) bt #0 0x0371ee5c in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) nexti 0x0371ee60 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee60 <stg_ap_v_info$def+4>: b 0x371ee68 <stg_ap_v_info$def+12> (gdb) 0x0371ee68 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee68 <stg_ap_v_info$def+12>: and r6, r7, #3 (gdb) 0x0371ee6c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee6c <stg_ap_v_info$def+16>: cmp r6, #1 (gdb) 0x0371ee70 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee70 <stg_ap_v_info$def+20>: beq 0x371ef70 <stg_ap_v_info$def+276> (gdb) 0x0371ee74 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee74 <stg_ap_v_info$def+24>: bic r7, r7, #3 (gdb) 0x0371ee78 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee78 <stg_ap_v_info$def+28>: ldr r0, [r7] (gdb) 0x0371ee7c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee7c <stg_ap_v_info$def+32>: ldrsh r6, [r0, #-4] (gdb) 0x0371ee80 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee80 <stg_ap_v_info$def+36>: sub r6, r6, #8 (gdb) 0x0371ee84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee84 <stg_ap_v_info$def+40>: cmp r6, #50 ; 0x32 (gdb) 0x0371ee88 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee88 <stg_ap_v_info$def+44>: bhi 0x371f0c4 <stg_ap_v_info$def+616> (gdb) 0x0371ee8c in stg_ap_v_info$def () 1: x/i $pc => 0x371ee8c <stg_ap_v_info$def+48>: add r2, pc, #0 (gdb) 0x0371ee90 in stg_ap_v_info$def () 1: x/i $pc => 0x371ee90 <stg_ap_v_info$def+52>: ldr pc, [r2, r6, lsl #2] (gdb) 0x0371ef80 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef80 <stg_ap_v_info$def+292>: ldrsh r2, [r0, #-10] (gdb) 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) Thread 1 "git-annex" received signal SIGILL, Illegal instruction. 0x0371ef84 in stg_ap_v_info$def () 1: x/i $pc => 0x371ef84 <stg_ap_v_info$def+296>: uxth r1, r2 (gdb) bt #0 0x0371ef84 in stg_ap_v_info$def () #1 0x03700118 in schedule () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) disassemble stg_ap_v_info$def Dump of assembler code for function stg_ap_v_info$def: 0x0371ee5c <+0>: mov r3, r6 0x0371ee60 <+4>: b 0x371ee68 <stg_ap_v_info$def+12> 0x0371ee64 <+8>: ldr r7, [r7, #4] 0x0371ee68 <+12>: and r6, r7, #3 0x0371ee6c <+16>: cmp r6, #1 0x0371ee70 <+20>: beq 0x371ef70 <stg_ap_v_info$def+276> 0x0371ee74 <+24>: bic r7, r7, #3 0x0371ee78 <+28>: ldr r0, [r7] 0x0371ee7c <+32>: ldrsh r6, [r0, #-4] 0x0371ee80 <+36>: sub r6, r6, #8 0x0371ee84 <+40>: cmp r6, #50 ; 0x32 0x0371ee88 <+44>: bhi 0x371f0c4 <stg_ap_v_info$def+616> 0x0371ee8c <+48>: add r2, pc, #0 0x0371ee90 <+52>: ldr pc, [r2, r6, lsl #2] 0x0371ee94 <+56>: cmneq r1, #128, 30 ; 0x200 0x0371ee98 <+60>: cmneq r1, #128, 30 ; 0x200 0x0371ee9c <+64>: cmneq r1, #128, 30 ; 0x200 0x0371eea0 <+68>: cmneq r1, #128, 30 ; 0x200 0x0371eea4 <+72>: cmneq r1, #128, 30 ; 0x200 0x0371eea8 <+76>: cmneq r1, #128, 30 ; 0x200 0x0371eeac <+80>: cmneq r1, #128, 30 ; 0x200 0x0371eeb0 <+84>: cmneq r1, #96, 30 ; 0x180 0x0371eeb4 <+88>: cmneq r1, #96, 30 ; 0x180 0x0371eeb8 <+92>: cmneq r1, #96, 30 ; 0x180 0x0371eebc <+96>: cmneq r1, #96, 30 ; 0x180 0x0371eec0 <+100>: cmneq r1, #96, 30 ; 0x180 0x0371eec4 <+104>: cmneq r1, #96, 30 ; 0x180 0x0371eec8 <+108>: cmneq r1, #96, 30 ; 0x180 0x0371eecc <+112>: cmneq r1, #96, 30 ; 0x180 0x0371eed0 <+116>: cmneq r1, #24 ; <UNPREDICTABLE> 0x0371eed4 <+120>: cmneq r1, #96, 30 ; 0x180 0x0371eed8 <+124>: cmneq r1, #252, 30 ; 0x3f0 0x0371eedc <+128>: cmneq r1, #96, 30 ; 0x180 0x0371eee0 <+132>: cmneq r1, #100, 28 ; 0x640 0x0371eee4 <+136>: cmneq r1, #100, 28 ; 0x640 0x0371eee8 <+140>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371eeec <+144>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371eef0 <+148>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371eef4 <+152>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371eef8 <+156>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371eefc <+160>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef00 <+164>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef04 <+168>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef08 <+172>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef0c <+176>: cmneq r1, #96, 30 ; 0x180 0x0371ef10 <+180>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef14 <+184>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef18 <+188>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef1c <+192>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef20 <+196>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef24 <+200>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef28 <+204>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef2c <+208>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef30 <+212>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef34 <+216>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef38 <+220>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef3c <+224>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef40 <+228>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef44 <+232>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef48 <+236>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef4c <+240>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef50 <+244>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef54 <+248>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef58 <+252>: cmneq r1, #196 ; 0xc4 ; <UNPREDICTABLE> 0x0371ef5c <+256>: cmneq r1, #96, 30 ; 0x180 0x0371ef60 <+260>: ldr r6, [pc, #360] ; 0x371f0d0 <stg_ap_v_info$def+628> 0x0371ef64 <+264>: str r6, [r5] 0x0371ef68 <+268>: mov r6, r3 0x0371ef6c <+272>: bx r0 0x0371ef70 <+276>: ldr r0, [r7, #-1] 0x0371ef74 <+280>: add r5, r5, #4 0x0371ef78 <+284>: mov r6, r3 0x0371ef7c <+288>: bx r0 0x0371ef80 <+292>: ldrsh r2, [r0, #-10] => 0x0371ef84 <+296>: uxth r1, r2 0x0371ef88 <+300>: cmp r1, #1 0x0371ef8c <+304>: bne 0x371efa4 <stg_ap_v_info$def+328> 0x0371ef90 <+308>: ldr r0, [r7] 0x0371ef94 <+312>: add r5, r5, #4 0x0371ef98 <+316>: orr r7, r7, #1 0x0371ef9c <+320>: mov r6, r3 0x0371efa0 <+324>: bx r0 ... 0x0371f0d0 <+628>: cmneq r1, #92, 28 ; 0x5c0 0x0371f0d4 <+632>: ; <UNDEFINED> instruction: 0x03a834a0 End of assembler dump. (gdb) print/x $r1 $2 = 0x1 (gdb) print/x $r2 $3 = 0x1 http://infocenter.arm.com/help/topic/com.arm.doc.dui0489i/CIHHJCFE.html UXTH Zero extend Halfword. Extends a 16-bit value to a 32-bit value. ... Architectures This ARM instruction is available in ARMv6 and above. This 32-bit Thumb instruction is available in ARMv6T2 and above. For the ARMv7-M architecture, it is only available in an ARMv7E-M implementation. This 16-bit Thumb instruction is available in ARMv6 and above. root@debian:~# cat /proc/cpuinfo processor : 0 model name : Feroceon 88FR131 rev 1 (v5l) BogoMIPS : 400.00 Features : swp half thumb fastmult edsp CPU implementer : 0x56 CPU architecture: 5TE CPU variant : 0x2 CPU part : 0x131 CPU revision : 1 Hardware : Marvell Kirkwood (Flattened Device Tree) Revision : 0000 Serial : 0000000000000000
_______________________________________________ Pkg-haskell-maintainers mailing list Pkg-haskell-maintainers@alioth-lists.debian.net https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-haskell-maintainers