[MPlayer-users] Re: MPlayer-0.90 pre3 reproducible crash

Anant Sahai sahai at eecs.berkeley.edu
Thu May 9 07:20:02 CEST 2002


 > On Tuesday, 07 May 2002, Anant Sahai wrote:
 > > [Automatic answer: RTFM (read DOCS, FAQ), also read 
DOCS/bugreports.html]
 > > MPlayer is a very nice piece of software. I use am IBM x22 laptop
 > > running ALSA-0.90rc1 on current updated Redhat 7.2. The DVD I used was
 > > the first volume of DUNE (SciFi channel miniseries). It worked fine 
when
 > > I just used: mplayer -gui dvd://
 > >
 > > But an attempt to use -dvdnav results in a crash as documented 
below. I
 > > have libdvdnav-0.1.0 installed from source.
[snip]
 > > MPlayer 0.90pre3-3.0.2 (C) 2000-2002 Arpad Gereoffy (see DOCS!)
 >                    ^^^^^
 > Have you tried compiling with gcc3-3.0.4 from updates? 3.0.2 is very 
buggy.

I just upgraded my system to RH7.3 and then upgraded manually to 
gcc3-3.0.4 after finding that neither the RH7.3 cds nor up2date bothered 
  to do this update automatically. I recompiled and got the same output:

[sahai at localhost MPlayer-0.90pre3]$ gdb ./mplayer
GNU gdb Red Hat Linux (5.1.90CVS-5)
Copyright 2002 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 "i386-redhat-linux"...
(gdb) run -v -gui -dvdnav
Starting program: /usr/local/src/mplayer/MPlayer-0.90pre3/mplayer -v 
-gui -dvdnav
[New Thread 1024 (LWP 2077)]


MPlayer 0.90pre3-3.0.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU vendor name: GenuineIntel  max cpuid level: 2
CPU: Intel Celeron 2/Pentium III Tualatin (Type: 6, Stepping: 1)
extended cpuid-level: 4
Testing OS support for SSE... yes.
Testing OS support for SSE unmasked exceptions... yes.
Tests of OS support for SSE passed.
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 0
Compiled for x86 CPU with features: MMX MMX2 SSE
X11 opening display: :0
vo: X11 color mask:  FFFF  (R:F800 G:7E0 B:1F)
vo: X11 running at 1024x768 with depth 16 and 16 bits/pixel (":0" => 
local display)
Reading /home/sahai/.mplayer/codecs.conf: can't open 
'/home/sahai/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/share/mplayer/codecs.conf: 34 audio & 91 video codecs
CommandLine: '-v' '-gui' '-dvdnav'
get_path('font/font.desc') -> '/home/sahai/.mplayer/font/font.desc'
font: can't open file: /home/sahai/.mplayer/font/font.desc
font: can't open file: /usr/local/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
Linux RTC init error in ioctl (rtc_pie_on): Permission denied
Using usleep() timing
get_path('input.conf') -> '/home/sahai/.mplayer/input.conf'
Can't open input config file /home/sahai/.mplayer/input.conf : No such 
file or directory
Falling back on default (hardcoded) config
get_path('Skin') -> '/home/sahai/.mplayer/Skin'
SKIN dir 1: '/home/sahai/.mplayer/Skin'
SKIN dir 2: '/usr/local/share/mplayer/Skin'
mplayer: playtree.c:244: play_tree_add_file: Assertion `file != ((void 
*)0)' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 1024 (LWP 2077)]
0x42029241 in kill () from /lib/i686/libc.so.6
(gdb) bt
#0  0x42029241 in kill () from /lib/i686/libc.so.6
#1  0x400a9c4b in raise () from /lib/i686/libpthread.so.0
#2  0x4202a7d2 in abort () from /lib/i686/libc.so.6
#3  0x42022ddb in __assert_fail () from /lib/i686/libc.so.6
#4  0x08075199 in play_tree_add_file () at playtree.c:258
#5  0x08068ee4 in main (argc=4, argv=0xbffff9d4, envp=0xbffff9e8)
     at mplayer.c:811
#6  0x42017499 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) disass $eip-32 $eip+32
Dump of assembler code from 0x42029221 to 0x42029261:
0x42029221 <sigprocmask+77>:	pop    %ebp
0x42029222 <sigprocmask+78>:	ret
0x42029223 <sigprocmask+79>:	lea    0x0(%esi),%esi
0x42029229 <sigprocmask+85>:	lea    0x0(%edi,1),%edi
0x42029230 <kill>:	mov    %ebx,%edx
0x42029232 <kill+2>:	mov    0x8(%esp,1),%ecx
0x42029236 <kill+6>:	mov    0x4(%esp,1),%ebx
0x4202923a <kill+10>:	mov    $0x25,%eax
0x4202923f <kill+15>:	int    $0x80
0x42029241 <kill+17>:	mov    %edx,%ebx
0x42029243 <kill+19>:	cmp    $0xfffff001,%eax
0x42029248 <kill+24>:	jae    0x4202924f <kill+31>
0x4202924a <kill+26>:	ret
0x4202924b <kill+27>:	mov    (%esp,1),%ebx
0x4202924e <kill+30>:	ret
0x4202924f <kill+31>:	push   %ebx
0x42029250 <kill+32>:	call   0x4202924b <kill+27>
0x42029255 <kill+37>:	add    $0x1070b7,%ebx
0x4202925b <kill+43>:	xor    %edx,%edx
0x4202925d <kill+45>:	sub    %eax,%edx
0x4202925f <kill+47>:	push   %edx
0x42029260 <kill+48>:	call   0x42016f28 <last_use+26127188>
---Type <return> to continue, or q <return> to quit---
End of assembler dump.
(gdb) print $eax
$1 = 0
(gdb) print $ebx
$2 = 2077
(gdb) print $ecx
$3 = 6
(gdb) print $edx
$4 = 1074481944
(gdb) print $esp
$5 = (void *) 0xbfffe50c
(gdb) print $ebp
$6 = (void *) 0xbfffe538
(gdb) print $edi
$7 = 1074454560
(gdb) print $esi
$8 = 2077

So it appears that the bug is real. The only difference between the 
setups is that this time I was running the stock OSS/Free drivers rather 
than ALSA and using XFree86 4.2 in 16bpp.




More information about the MPlayer-users mailing list