[MPlayer-users] New CPU-detection code in current CVS, crash on Athlon
Michael Mauch
michael.mauch at gmx.de
Tue Mar 19 22:09:03 CET 2002
Hi,
after CVS update of today, MPlayer crashes shortly after caching the
first chunk of a (S)VCD. MPlayer worked great before with the same
(S)VCD (I'm sorry I don't know when I CVS updated before).
My system once was SuSE 6.1, but in the mean time I updated and built
almost everything from sources.
% uname -a
Linux elmicha 2.4.18 #1 Die Mär 12 22:36:29 CET 2002 i686 unknown
% ls -l /lib/libc[.-]*
-rwxr-xr-x 1 root root 4140854 Nov 6 2000 /lib/libc-2.1.3.so
lrwxrwxrwx 1 root root 13 Sep 9 2001 /lib/libc.so.4 -> libc.so.4.7.6
-rwxr-xr-x 1 root root 634880 Apr 29 1996 /lib/libc.so.4.7.6
lrwxrwxrwx 1 root root 13 Sep 9 2001 /lib/libc.so.6 -> libc-2.1.3.so
% X -version
XFree86 Version 4.1.0 / X Window System
(protocol Version 11, revision 0, vendor release 6510)
Release Date: 2 June 2001
If the server is older than 6-12 months, or if your card is
newer than the above date, look for a newer version before
reporting problems. (See http://www.XFree86.Org/FAQ)
Build Operating System: SuSE Linux [ELF] SuSE
Module Loader present
% gcc -v
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/specs
gcc version 2.95.3 20010315 (release)
% ld -v
GNU ld version 2.11.2 (with BFD 2.11.2)
% as --version
GNU assembler 2.11.2
Copyright 2001 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License. This program has absolutely no warranty.
This assembler was configured for a target of `i686-pc-linux-gnu'.
% cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 6
model : 2
model name : AMD Athlon(tm) Processor
stepping : 1
cpu MHz : 706.969
cache size : 512 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 vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips : 1409.02
% lspci -v
00:00.0 Host bridge: Advanced Micro Devices [AMD] AMD-751 [Irongate] System Controller (rev 25)
Flags: bus master, medium devsel, latency 120
Memory at e0000000 (32-bit, prefetchable) [size=128M]
Memory at eedff000 (32-bit, prefetchable) [size=4K]
I/O ports at d400 [disabled] [size=4]
Capabilities: [a0] AGP version 1.0
00:01.0 PCI bridge: Advanced Micro Devices [AMD] AMD-751 [Irongate] AGP Bridge (rev 01) (prog-if 00 [Normal decode])
Flags: bus master, 66Mhz, medium devsel, latency 120
Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
I/O behind bridge: 0000b000-0000bfff
Memory behind bridge: eee00000-efefffff
Prefetchable memory behind bridge: dac00000-decfffff
00:07.0 ISA bridge: Advanced Micro Devices [AMD] AMD-756 [Viper] ISA (rev 01)
Flags: bus master, medium devsel, latency 0
00:07.1 IDE interface: Advanced Micro Devices [AMD] AMD-756 [Viper] IDE (rev 07) (prog-if 8a [Master SecP PriP])
Flags: bus master, medium devsel, latency 32
I/O ports at f000 [size=16]
00:07.3 Bridge: Advanced Micro Devices [AMD] AMD-756 [Viper] ACPI (rev 03)
Flags: medium devsel
00:07.4 USB Controller: Advanced Micro Devices [AMD] AMD-756 [Viper] USB (rev 06) (prog-if 10 [OHCI])
Flags: bus master, medium devsel, latency 16, IRQ 10
Memory at efffe000 (32-bit, non-prefetchable) [size=4K]
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139 (rev 10)
Subsystem: Allied Telesyn International: Unknown device 2503
Flags: bus master, medium devsel, latency 64, IRQ 10
I/O ports at d800 [size=256]
Memory at effffe00 (32-bit, non-prefetchable) [size=256]
Capabilities: [50] Power Management version 2
00:09.0 SCSI storage controller: Advanced System Products, Inc ABP940-U / ABP960-U (rev 03)
Subsystem: Advanced System Products, Inc ASC1300 SCSI Adapter
Flags: bus master, medium devsel, latency 64, IRQ 10
I/O ports at dc00 [size=256]
Memory at efffff00 (32-bit, non-prefetchable) [size=256]
Expansion ROM at effe0000 [disabled] [size=64K]
01:05.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev 03) (prog-if 00 [VGA])
Subsystem: Matrox Graphics, Inc. Millennium G400 MAX/Dual Head 32Mb
Flags: bus master, medium devsel, latency 64, IRQ 10
Memory at dc000000 (32-bit, prefetchable) [size=32M]
Memory at efefc000 (32-bit, non-prefetchable) [size=16K]
Memory at ef000000 (32-bit, non-prefetchable) [size=8M]
Expansion ROM at efee0000 [disabled] [size=64K]
Capabilities: [dc] Power Management version 2
Capabilities: [f0] AGP version 2.0
% lsmod |egrep -i "mga|matrox|frame|i2c"|clip
mga_vid 9120 0 (autoclean)
matroxfb_maven 9184 0 (unused)
matroxfb_crtc2 6848 0
i2c-matroxfb 3232 0 (unused)
matroxfb_base 17408 63 [matroxfb_crtc2 i2c-matroxfb]
matroxfb_DAC1064 5508 0 [matroxfb_crtc2 matroxfb_base]
matroxfb_accel 7456 0 [matroxfb_base matroxfb_DAC1064]
i2c-algo-bit 7148 3 [i2c-matroxfb]
i2c-core 12992 0 [matroxfb_maven i2c-algo-bit]
matroxfb_misc 12288 0 [matroxfb_maven matroxfb_crtc2 i2c-matroxfb matroxfb_base matroxfb_DAC1064 matroxfb_accel]
mga 103440 1
% gdb mplayer
GNU gdb 5.1
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) run -v -display :0.1 -vcd 1 -vo x11 -fs -zoom
Starting program: /usr/local/src/MPlayer-CVS/main/mplayer -v -display :0.1 -vcd 1 -vo x11 -fs -zoom
[New Thread 1024 (runnable)]
MPlayer CVS-020319-20:11-2.95.3 (C) 2000-2002 Arpad Gereoffy (siehe DOCS!)
CPU vendor name: AuthenticAMD max cpuid level: 1
CPU: Advanced Micro Devices Athlon K75 Pluto,Orion (Type: 6, Stepping: 1)
extended cpuid-level: 6
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Compiled with RUNTIME CPU Detection - warning, it's not optimal! To get best performance, recompile mplayer from sources with --disable-runtime-cpudetection
/home/elmicha/.mplayer/config(11): option: vo
/home/elmicha/.mplayer/config(11): parameter: xmga
/home/elmicha/.mplayer/config(14): option: ao
/home/elmicha/.mplayer/config(14): parameter: oss
/home/elmicha/.mplayer/config(17): option: fs
/home/elmicha/.mplayer/config(17): parameter: yes
/home/elmicha/.mplayer/config(20): option: fsmode
/home/elmicha/.mplayer/config(20): parameter: 1
/home/elmicha/.mplayer/config(52): option: gui
/home/elmicha/.mplayer/config(52): parameter: no
/home/elmicha/.mplayer/config(60): option: skin
/home/elmicha/.mplayer/config(60): parameter: xine-lcd
/home/elmicha/.mplayer/config(76): option: mixer
/home/elmicha/.mplayer/config(76): parameter: /dev/mixer
/home/elmicha/.mplayer/config(101): option: fb
/home/elmicha/.mplayer/config(101): parameter: /dev/fb1
/home/elmicha/.mplayer/config(128): option: framedrop
/home/elmicha/.mplayer/config(128): parameter: yes
/home/elmicha/.mplayer/config(133): option: vfm
/home/elmicha/.mplayer/config(133): parameter: 5
/home/elmicha/.mplayer/config(138): option: cache
/home/elmicha/.mplayer/config(138): parameter: 8192
/home/elmicha/.mplayer/config(156): option: sws
/home/elmicha/.mplayer/config(156): parameter: 0
/home/elmicha/.mplayer/config(157): option: osdlevel
/home/elmicha/.mplayer/config(157): parameter: 1
Reading /home/elmicha/.mplayer/codecs.conf: parse error at line 294
Reading /usr/local/share/mplayer/codecs.conf: 30 audio & 80 video codecs
CommandLine: '-v' '-display' ':0.1' '-vcd' '1' '-vo' 'x11' '-fs' '-zoom'
get_path('font/font.desc') -> '/home/elmicha/.mplayer/font/font.desc'
Font /home/elmicha/.mplayer/font/font.desc loaded successfully! (206 chars)
Linux RTC init error: Keine Berechtigung
Using usleep() timing
get_path('input.conf') -> '/home/elmicha/.mplayer/input.conf'
Parsing input config file /home/elmicha/.mplayer/input.conf
Input config file /home/elmicha/.mplayer/input.conf parsed : 52 binds
Spiele VCD track 1
track 01: adr=1 ctrl=4 format=2 00:02:00 mode: 1
track 02: adr=1 ctrl=4 format=2 00:12:00 mode: 1
VCD start byte position: 0x551B8 end: 0x1FEA50
CACHE_PRE_INIT: 0 [0] 0 pre:0 eof:0
Cache fill: 19.84% (1663984 bytes) Checking for YUV4MPEG2
ASF_check: not ASF guid!
Checking for NuppelVideo
Checking for MOV
Checking for VIVO
header block 1 size: 85
Checking for REAL
system stream synced at 0x1BA8FD (0)!
==> Found video stream: 0
MPEG-PS Dateiformat erkannt!
==> Found audio stream: 0
Searching for sequence header... OK!
VIDEO: MPEG2 480x480 (aspect 2) 29.97 fps 3160.0 kbps (395.0 kbyte/s)
[V] filefmt:2 fourcc:0x10000002 size:480x480 fps:29.97 ftime:=0.0334
get_path('sub/') -> '/home/elmicha/.mplayer/sub/'
Detected audio codec: [mp3] drv:1 (MPEG layer-2, layer-3)
Initializing audio codec...
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer
CPU vendor name: AuthenticAMD max cpuid level: 1
CPU: Advanced Micro Devices Athlon K75 Pluto,Orion (Type: 6, Stepping: 1)
extended cpuid-level: 6
mp3lib: made decode tables with MMX optimization
init layer2&3 finished, tables done
mp3lib: using 3DNow!Ex optimized decore!
Program received signal SIGILL, Illegal instruction.
[Switching to Thread 1024 (runnable)]
0x08087d4d in fast_memcpy (to=0x826d1e0, from=0x826cae0, len=512) at aclib_template.c:207
207 __asm__ __volatile__ (
(gdb) bt
#0 0x08087d4d in fast_memcpy (to=0x826d1e0, from=0x826cae0, len=512)
at aclib_template.c:207
#1 0x080b0f8e in MP3_DecodeFrame (hova=0x83133f0 "", single=-1) at sr1.c:167
#2 0x0806e6cc in init_audio (sh_audio=0x82b9ce0) at dec_audio.c:772
#3 0x08068008 in main (argc=10, argv=0xbfffef54, envp=0xbfffef80) at mplayer.c:1159
#4 0x405e48c1 in __libc_start_main (main=0x80665fc <main>, argc=10, argv=0xbfffef54,
init=0x8063bc0 <_init>, fini=0x81bf4f4 <_fini>, rtld_fini=0x4000a914 <_dl_fini>,
stack_end=0xbfffef4c) at ../sysdeps/generic/libc-start.c:92
(gdb) disass $eip-32 $eip+32
Dump of assembler code from 0x8087d2d to 0x8087d6d:
0x8087d2d <fast_memcpy+141>: dec %edi
0x8087d2e <fast_memcpy+142>: adc %cl,(%edi)
0x8087d30 <fast_memcpy+144>: sub 0x20(%edi),%edx
0x8087d33 <fast_memcpy+147>: movntps %xmm3,0x30(%edi)
0x8087d37 <fast_memcpy+151>: add $0x40,%esi
0x8087d3a <fast_memcpy+154>: add $0x40,%edi
0x8087d3d <fast_memcpy+157>: dec %ecx
0x8087d3e <fast_memcpy+158>: jne 0x8087d12 <fast_memcpy+114>
0x8087d40 <fast_memcpy+160>: jmp 0x8087d74 <fast_memcpy+212>
0x8087d42 <fast_memcpy+162>: test %ecx,%ecx
0x8087d44 <fast_memcpy+164>: je 0x8087d74 <fast_memcpy+212>
0x8087d46 <fast_memcpy+166>: prefetchnta 0x140(%esi)
0x8087d4d <fast_memcpy+173>: movaps (%esi),%xmm0
0x8087d50 <fast_memcpy+176>: movaps 0x10(%esi),%xmm1
0x8087d54 <fast_memcpy+180>: movaps 0x20(%esi),%xmm2
0x8087d58 <fast_memcpy+184>: movaps 0x30(%esi),%xmm3
0x8087d5c <fast_memcpy+188>: movntps %xmm0,(%edi)
0x8087d5f <fast_memcpy+191>: movntps %xmm1,0x10(%edi)
0x8087d63 <fast_memcpy+195>: movntps %xmm2,0x20(%edi)
0x8087d67 <fast_memcpy+199>: movntps %xmm3,0x30(%edi)
0x8087d6b <fast_memcpy+203>: add $0x40,%esi
End of assembler dump.
(gdb) q
The program is running. Exit anyway? (y or n) y
"--disable-runtime-cpudetection" doesn't help, neither does replacing the
old ~/.mplayer/codecs.conf.
"gcc -c -O4 -march=i486 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer"
are the right flags for my Athlon?
Hope I didn't forget something.
Regards...
Michael
More information about the MPlayer-users
mailing list