Bug#657885: ffmpeg: Illegal instruction on dreamplug (arm cpu)

Reinhard Tartler siretart at gmail.com
Sun Feb 5 08:02:50 UTC 2012


On Sun, Jan 29, 2012 at 5:27 PM, Darwin Te <darwin_te at hotmail.com> wrote:
> Package: ffmpeg
> Version: 4:0.8-1
> Severity: normal
>
>
> Dear Maintainer,
>
>
> [16:16 - 1.25]
> [user at debian 1] ~ > ffmpeg
> Illegal instruction
> [16:16 - 1.25]
> [user at debian 2] ~ > gdb ffmpeg
> GNU gdb (GDB) 7.3-debian
> Copyright (C) 2011 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".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>...
> Reading symbols from /usr/bin/ffmpeg...(no debugging symbols found)...done.
> (gdb) run
> Starting program: /usr/bin/ffmpeg
> [Thread debugging using libthread_db enabled]
>
> Program received signal SIGILL, Illegal instruction.
> 0x00018cf8 in ?? ()
> (gdb) disassemble $pc, $pc+0x20
> Cannot access memory at address 0x0
> Dump of assembler code from 0x18cf8 to 0x18d18:
> => 0x00018cf8:  movw    lr, #2011       ; 0x7db
>   0x00018cfc:  ldr     r2, [pc, #148]  ; 0x18d98
>   0x00018d00:  ldr     r4, [pc, #148]  ; 0x18d9c
>   0x00018d04:  ldr     r12, [r12]
>   0x00018d08:  ldr     r3, [r3, r2]
>   0x00018d0c:  add     r4, pc, r4
>   0x00018d10:  ldr     r2, [pc, #136]  ; 0x18da0
>   0x00018d14:  str     lr, [sp, #4]
> End of assembler dump.
>
>
> More system information:
>
> Initializing cgroup subsys cpu
> Linux version 3.1.10 (kelly at bbb.internal) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #1 PREEMPT Fri Jan 20 10:47:05 MST 2012
> CPU: Feroceon 88FR131 [56251311] revision 1 (ARMv5TE), cr=00053977
> CPU: VIVT data cache, VIVT instruction cache
> Machine: Marvell GuruPlug Reference Board

I see. Your machine is not ARMv7 capable, yet, the baseline flavor of
libavcodec does seem to use ARMv7 instructions. cf.
http://blogs.arm.com/software-enablement/251-how-to-load-constants-in-assembly-for-arm-architecture/

Can you please retrieve a backtrace with libav-dbg installed? I need
to know where exactly in the code the offending instruction occurs in
order to determine if it's an upstream bug or a configuration issue.

Thanks
Reinhard

-- 
regards,
    Reinhard





More information about the pkg-multimedia-maintainers mailing list