Bug#786438: libmp3lame0: general protection error in libmp3lame.so.0.0.0

Bernhard Übelacker bernhardu at vr-web.de
Sat May 30 03:12:37 UTC 2015


Hello Fabian, hello Detrick,

Am 29.05.2015 um 22:02 schrieb Fabian Greffrath:
>> I could reproduce a SIGSEGV on arch i386 inside qemu VM by these actions:
> is this on a fresh Jessie install?

Is a Jessie-Testing installation from 30th November 2014.
At least upgraded to the latest (Jessie) versions 20 days ago.



>> (amd64 did not show the fault)
> Ack, I couldn't reproduce it on my amd64 system as well.

I tried a little further and was able to reproduce the crash in a
"Jessie i386 chroot" on a 64bit-kernel too, so probably we
can rule out a qemu bug. (Had proc not bind-mounted into chroot.)



>> (gdb) bt
>> #0  0xb76e30c9 in init_xrpow_core_sse () from /usr/lib/i386-linux-gnu/libmp3lame.so.0
> So, this seems to be a bug in SSE code. Which means that either the code
> itself is buggy or your system does not support SSE instructions at all
> (though the latter should throw a SIGILL instead of a SIGSEGV).

 => 0xb76df6c9 <init_xrpow_core_sse+105>:        movaps %xmm0,0x20(%esp)

Yes, this "movaps" seems to be a SSE instruction.
Also the changes in the previous patch "should" not change the instructions
but only the alignment of the memory the instructions operate on.
And if that is the case, with proper alignment it is working.
But probably there is a better way to convince gcc to align the memory ...



> Would both of you please tell my the content of /proc/cpuinfo?

In the qemu VM (qemu-system-x86_64 --enable-kvm -cpu host):
    benutzer at debian:~$ cat /proc/cpuinfo 
    processor       : 0
    vendor_id       : AuthenticAMD
    cpu family      : 15
    model           : 107
    model name      : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+
    stepping        : 1
    microcode       : 0x1000065
    cpu MHz         : 2600.000
    cache size      : 512 KB
    fdiv_bug        : no
    f00f_bug        : no
    coma_bug        : no
    fpu             : yes
    fpu_exception   : yes
    cpuid level     : 1
    wp              : yes
    flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow extd_apicid pni cx16 x2apic hypervisor lahf_lm cmp_legacy svm cr8_legacy 3dnowprefetch vmmcall
    bogomips        : 5200.00
    clflush size    : 64
    cache_alignment : 64
    address sizes   : 40 bits physical, 48 bits virtual
    power management:


On the host not inside chroot:
    root at rechner:/home/bernhard# cat /proc/cpuinfo
    processor       : 0
    vendor_id       : AuthenticAMD
    cpu family      : 15
    model           : 107
    model name      : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+
    stepping        : 1
    cpu MHz         : 2600.000
    cache size      : 512 KB
    physical id     : 0
    siblings        : 2
    core id         : 0
    cpu cores       : 2
    apicid          : 0
    initial apicid  : 0
    fpu             : yes
    fpu_exception   : yes
    cpuid level     : 1
    wp              : yes
    flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good nopl extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch lbrv vmmcall
    bogomips        : 5223.84
    TLB size        : 1024 4K pages
    clflush size    : 64
    cache_alignment : 64
    address sizes   : 40 bits physical, 48 bits virtual
    power management: ts fid vid ttp tm stc 100mhzsteps

    (the same for the second core)



Kind regards,
Bernhard



More information about the pkg-multimedia-maintainers mailing list