[pulseaudio-tickets] [Bug 49681] system.pa crashes if auth-anonymous=1 is used with module-native-protocol-tcp
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Fri Oct 24 08:46:32 PDT 2014
https://bugs.freedesktop.org/show_bug.cgi?id=49681
--- Comment #22 from Frederic Germain <frederic.germain at gmail.com> ---
I have more information about this bug.
It happens in the SIMD function in ORC, and it's maybe specific to AMD Geode or
MMX only (no SSE/SSE2) CPUs
I have it on AMD Geode, when pulseaudio has to apply a volume to the sink.
A quickfix to it could be to launch pulseaudio with PULSE_NO_SIMD env variable
->
PULSE_NO_SIMD=1 pulseaudio --start
But then you loose the optimization you could have with MMX
I'm not sure I have time to fix the bug in ORC, but maybe there is a jedi out
there who can find the problem quickly :)
Step to reproduce on Geode platform (Debian Wheezy x86). Alsa card driver is
cs5535audio.
> gdb pulseaudio
> pacmd set-sink-volume 0 0x100 (volume is really really loud at 100% on my board)
> paplay mymusic.wav
In gdb ->
Program received signal SIGILL, Illegal instruction.
[Switching to Thread 0xb3235b70 (LWP 3239)]
0xae128031 in ?? ()
(gdb) bt
#0 0xae128031 in ?? ()
#1 0x00003d3c in ?? ()
> cat /proc/$(pidof pulseaudio)/maps |grep orc
ae118000-ae128000 rw-s 00000000 08:01 56769 /tmp/orcexec.Wk0lzw (deleted)
ae128000-ae138000 r-xs 00000000 08:01 56769 /tmp/orcexec.Wk0lzw (deleted)
It seems gdb cannot rewind stack of orc functions on this architecture, that's
pretty sad.
(gdb) disas /r 0xae128000,0xae138000
Dump of assembler code from 0xae128000 to 0xae138000:
0xae128000: 55 push %ebp
0xae128001: 8b 6c 24 08 mov 0x8(%esp),%ebp
0xae128005: 0f 6e 85 74 01 00 00 movd 0x174(%ebp),%mm0
0xae12800c: 0f c4 85 94 01 00 00 02 pinsrw $0x2,0x194(%ebp),%mm0
0xae128014: 0f c4 85 96 01 00 00 03 pinsrw $0x3,0x196(%ebp),%mm0
0xae12801c: 0f ef c9 pxor %mm1,%mm1
0xae12801f: 8b 4d 04 mov 0x4(%ebp),%ecx
0xae128022: 89 4d 0c mov %ecx,0xc(%ebp)
0xae128025: 8b 45 14 mov 0x14(%ebp),%eax
0xae128028: 83 7d 0c 00 cmpl $0x0,0xc(%ebp)
0xae12802c: 74 54 je 0xae128082
0xae12802e: 8b 55 0c mov 0xc(%ebp),%edx
=> 0xae128031: 66 66 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 data32 data32
data32 data32 data32 nopw %cs:0x0(%eax,%eax,1)
0xae128040: 0f 6e 10 movd (%eax),%mm2
0xae128043: 0f ef db pxor %mm3,%mm3
0xae128046: 0f 61 d3 punpcklwd %mm3,%mm2
0xae128049: 0f 6f d9 movq %mm1,%mm3
0xae12804c: 0f 65 da pcmpgtw %mm2,%mm3
0xae12804f: 0f db d8 pand %mm0,%mm3
0xae128052: 0f e4 d0 pmulhuw %mm0,%mm2
0xae128055: 0f fa d3 psubd %mm3,%mm2
0xae128058: 0f 6f d8 movq %mm0,%mm3
0xae12805b: 0f 72 e3 10 psrad $0x10,%mm3
0xae12805f: 0f 6b db packssdw %mm3,%mm3
0xae128062: 0f 6e 20 movd (%eax),%mm4
0xae128065: 0f 6f ec movq %mm4,%mm5
0xae128068: 0f e5 eb pmulhw %mm3,%mm5
0xae12806b: 0f d5 e3 pmullw %mm3,%mm4
0xae12806e: 0f 61 e5 punpcklwd %mm5,%mm4
0xae128071: 0f fe d4 paddd %mm4,%mm2
0xae128074: 0f 6b d2 packssdw %mm2,%mm2
---Type <return> to continue, or q <return> to quit---q
Quit
cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 10
model name : Geode(TM) Integrated Processor by AMD PCS
stepping : 2
microcode : 0x8b
cpu MHz : 498.053
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu de pse tsc msr cx8 sep pge cmov clflush mmx mmxext
3dnowext 3dnow
bogomips : 996.10
clflush size : 32
cache_alignment : 32
address sizes : 32 bits physical, 32 bits virtual
power management:
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/pulseaudio-bugs/attachments/20141024/5fbb5f1d/attachment.html>
More information about the pulseaudio-bugs
mailing list