[MPlayer-users] MPlayer crashes playing DVDs via dvdnav:// since the recent libdvdnav updates

Ilja Sekler ilja_sekler_ at gmx.de
Tue Jan 1 20:33:21 CET 2013


Hello,

since r1245 of libdvdnav

########################################################################

r1245 | rathann | 2012-12-09 22:13:14 +0100 (Sun, 09 Dec 2012) | 4 lines
Changed paths:
   M /trunk/libdvdnav/src/vm/vm.c

Fix failed assertion when there's no menu.

Patch by Erik Hovland.

########################################################################

MPlayer crashes immediately when trying to play a DVD (every DVD I tried
so far) via dvdnav:// with either


mplayer: libdvdnav/vm/vm.c:417: vm_new_copy: Assertion `pgcN' failed.


or


mplayer: libdvdnav/vm/vm.c:1586: process_command: Assertion `0' failed.


followed by


MPlayer interrupted by signal 6 in module: open_stream


as its last words. Reverting libdvdnav to the state prior to r1245 fixes
the breakage. gdb output attached.

MPlayer r35712 on Fedora 17 with kernel 3.6.11-1.fc17.x86_64.

Thanks,

-- 
Regards

Ilja
-------------- next part --------------
(gdb) bt
#0  0x00007ffff2c35935 in raise () from /lib64/libc.so.6
#1  0x00007ffff2c370e8 in abort () from /lib64/libc.so.6
#2  0x00007ffff2c2e6a2 in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007ffff2c2e752 in __assert_fail () from /lib64/libc.so.6
#4  0x0000000000567f70 in vm_new_copy (source=0x1602e90) at libdvdnav/vm/vm.c:417
#5  0x0000000000564ce3 in dvdnav_menu_call (this=0x16014e0, menu=menu at entry=DVD_MENU_Root) at libdvdnav/searching.c:454
#6  0x000000000055f943 in open_s (stream=0x15ff390, mode=<optimized out>, opts=0x15fb5f0, file_format=0xff06d0) at stream/stream_dvdnav.c:629
#7  0x00000000005454ae in open_stream_plugin (redirected_url=<synthetic pointer>, ret=<synthetic pointer>, file_format=0xff06d0, options=0x0, mode=0, filename=<optimized out>, sinfo=<optimized out>)
    at stream/stream.c:186
#8  open_stream_full (filename=<optimized out>, mode=mode at entry=0, options=options at entry=0x0, file_format=0xff06d0) at stream/stream.c:239
#9  0x0000000000544b11 in open_stream (filename=<optimized out>, options=options at entry=0x0, file_format=file_format at entry=0xff06d0) at stream/open.c:64
#10 0x0000000000453f0d in main (argc=<optimized out>, argv=<optimized out>) at mplayer.c:3228



(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0x7ffff2c35915 to 0x7ffff2c35955:
   0x00007ffff2c35915 <raise+21>:	mov    $0xf000000,%edx
   0x00007ffff2c3591a <raise+26>:	add    $0x8964c689,%eax
   0x00007ffff2c3591f <raise+31>:	add    $0x25,%al
   0x00007ffff2c35921 <raise+33>:	rolb   (%rdx)
   0x00007ffff2c35923 <raise+35>:	add    %al,(%rax)
   0x00007ffff2c35925 <raise+37>:	movslq %edi,%rdx
   0x00007ffff2c35928 <raise+40>:	movslq %esi,%rsi
   0x00007ffff2c3592b <raise+43>:	movslq %eax,%rdi
   0x00007ffff2c3592e <raise+46>:	mov    $0xea,%eax
   0x00007ffff2c35933 <raise+51>:	syscall 
=> 0x00007ffff2c35935 <raise+53>:	cmp    $0xfffffffffffff000,%rax
   0x00007ffff2c3593b <raise+59>:	ja     0x7ffff2c3594f <raise+79>
   0x00007ffff2c3593d <raise+61>:	repz retq 
   0x00007ffff2c3593f <raise+63>:	nop
   0x00007ffff2c35940 <raise+64>:	test   %eax,%eax
   0x00007ffff2c35942 <raise+66>:	jg     0x7ffff2c35925 <raise+37>
   0x00007ffff2c35944 <raise+68>:	test   $0x7fffffff,%eax
   0x00007ffff2c35949 <raise+73>:	je     0x7ffff2c35960 <raise+96>
   0x00007ffff2c3594b <raise+75>:	neg    %eax
   0x00007ffff2c3594d <raise+77>:	jmp    0x7ffff2c35925 <raise+37>
   0x00007ffff2c3594f <raise+79>:	mov    0x37a4da(%rip),%rdx        # 0x7ffff2fafe30
End of assembler dump.



(gdb) info all-registers
rax            0x0	0
rbx            0x7ffff7ff1000	140737354076160
rcx            0xffffffffffffffff	-1
rdx            0x6	6
rsi            0x3cc1	15553
rdi            0x3cc1	15553
rbp            0x7ffff2d781a8	0x7ffff2d781a8
rsp            0x7fffffffcdc8	0x7fffffffcdc8
r8             0xfefefefefefefeff	-72340172838076673
r9             0xff00000000000000	-72057594037927936
r10            0x8	8
r11            0x202	514
r12            0xb9839c	12157852
r13            0xb98e11	12160529
r14            0xff06d0	16713424
r15            0x0	0
rip            0x7ffff2c35935	0x7ffff2c35935 <raise+53>
eflags         0x202	[ IF ]
cs             0x33	51
ss             0x2b	43
ds             0x0	0
es             0x0	0
fs             0x0	0
gs             0x0	0
st0            0	(raw 0x00000000000000000000)
st1            0	(raw 0x00000000000000000000)
st2            0	(raw 0x00000000000000000000)
st3            0	(raw 0x00000000000000000000)
st4            0	(raw 0x00000000000000000000)
st5            0	(raw 0x00000000000000000000)
st6            0	(raw 0x00000000000000000000)
st7            0	(raw 0x00000000000000000000)
fctrl          0x37f	895
fstat          0x0	0
ftag           0xffff	65535
fiseg          0x0	0
fioff          0x0	0
foseg          0x0	0
fooff          0x0	0
fop            0x0	0
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0xff00, 0x0, 0x0, 
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0xff00, 0x0, 0x0}, v2_int64 = {0xff0000000000, 0x0}, uint128 = 0x00000000000000000000ff0000000000}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x25 <repeats 16 times>}, v8_int16 = {0x2525, 0x2525, 0x2525, 0x2525, 0x2525, 0x2525, 0x2525, 0x2525}, v4_int32 = {
    0x25252525, 0x25252525, 0x25252525, 0x25252525}, v2_int64 = {0x2525252525252525, 0x2525252525252525}, uint128 = 0x25252525252525252525252525252525}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {
    0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 
    0xff00, 0x0, 0x0, 0xff, 0x0}, v4_int32 = {0x0, 0xff000000, 0x0, 0xff}, v2_int64 = {0xff00000000000000, 0xff00000000}, uint128 = 0x000000ff00000000ff00000000000000}
xmm4           {v4_float = {0xcf4e470, 0xcb5, 0x32549640, 0xd05f4}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x47, 0x4e, 0x4f, 0x4d, 0x45, 0x5f, 0x4b, 0x45, 0x59, 0x52, 0x49, 0x4e, 
    0x47, 0x5f, 0x50, 0x49}, v8_int16 = {0x4e47, 0x4d4f, 0x5f45, 0x454b, 0x5259, 0x4e49, 0x5f47, 0x4950}, v4_int32 = {0x4d4f4e47, 0x454b5f45, 0x4e495259, 0x49505f47}, v2_int64 = {0x454b5f454d4f4e47, 
    0x49505f474e495259}, uint128 = 0x49505f474e495259454b5f454d4f4e47}
xmm5           {v4_float = {0x3, 0x3, 0x3, 0x3}, v2_double = {0x20, 0x20}, v16_int8 = {0x40 <repeats 16 times>}, v8_int16 = {0x4040, 0x4040, 0x4040, 0x4040, 0x4040, 0x4040, 0x4040, 0x4040}, v4_int32 = {
---Type <return> to continue, or q <return> to quit---
    0x40404040, 0x40404040, 0x40404040, 0x40404040}, v2_int64 = {0x4040404040404040, 0x4040404040404040}, uint128 = 0x40404040404040404040404040404040}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x5b <repeats 16 times>}, v8_int16 = {0x5b5b, 0x5b5b, 0x5b5b, 0x5b5b, 0x5b5b, 0x5b5b, 0x5b5b, 
    0x5b5b}, v4_int32 = {0x5b5b5b5b, 0x5b5b5b5b, 0x5b5b5b5b, 0x5b5b5b5b}, v2_int64 = {0x5b5b5b5b5b5b5b5b, 0x5b5b5b5b5b5b5b5b}, uint128 = 0x5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x20 <repeats 16 times>}, v8_int16 = {0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x2020, 0x2020}, v4_int32 = {
    0x20202020, 0x20202020, 0x20202020, 0x20202020}, v2_int64 = {0x2020202020202020, 0x2020202020202020}, uint128 = 0x20202020202020202020202020202020}
xmm8           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x2000, 0x2020, 0x0, 
    0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x20000000, 0x2020, 0x0, 0x0}, v2_int64 = {0x202020000000, 0x0}, uint128 = 0x00000000000000000000202020000000}
xmm9           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x0, 0xff <repeats 12 times>, 0x0, 0xff, 0xff}, v8_int16 = {0xff00, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xff, 0xffff}, v4_int32 = {0xffffff00, 0xffffffff, 0xffffffff, 0xffff00ff}, v2_int64 = {0xffffffffffffff00, 0xffff00ffffffffff}, uint128 = 0xffff00ffffffffffffffffffffffff00}
xmm10          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0, 0x0, 0x0, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x2000, 0x2020, 0x0, 
    0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x20000000, 0x2020, 0x0, 0x0}, v2_int64 = {0x202020000000, 0x0}, uint128 = 0x00000000000000000000202020000000}
xmm11          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x0, 0xff <repeats 15 times>}, v8_int16 = {0xff00, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff}, v4_int32 = {0xffffff00, 0xffffffff, 0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffff00, 0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffff00}
xmm12          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {
    0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm13          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {
    0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm14          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {
    0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
xmm15          {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {
    0x0, 0x0}, uint128 = 0x00000000000000000000000000000000}
mxcsr          0x1fa0	[ PE IM DM ZM OM UM PM ]



More information about the MPlayer-users mailing list