[Ffmpeg-devel] nut segdefault on powerpc.
castet.matthieu at free.fr
castet.matthieu
Thu May 19 11:35:13 CEST 2005
Hi,
when running the test on powerpc64 compilled as 32 bits binary with -cc='gcc
-m32', it failed on nut. They pass with 64 bits binary.
What's wrong ?
mat at verone:~/ffmpeg/tests> ../ffmpeg_g -y -bitexact -dct_algo 1 -idct_algo 2 -t
1 -y -qscale 10 -f pgmyuv -i vsynth1/%d.pgm -f s16le -i asynth1.sw -acodec mp2
./data/b-libav.nut
ffmpeg version 0.4.9-pre1, build 4755, Copyright (c) 2000-2004 Fabrice Bellard
configuration: --cc=gcc -m32
built on May 19 2005 11:12:34, gcc: 3.4.2
Input #0, image2, from 'vsynth1/%d.pgm':
Duration: 00:00:02.0, start: 0.000000, bitrate: N/A
Stream #0.0: Video: pgmyuv, yuv420p, 352x288, 25.00 fps
Input #1, s16le, from 'asynth1.sw':
Duration: N/A, bitrate: N/A
Stream #1.0: Audio: pcm_s16le, 44100 Hz, mono, 705 kb/s
Output #0, nut, to './data/b-libav.nut':
Stream #0.0: Video: mpeg4, yuv420p, 352x288, 25.00 fps, q=2-31, 200 kb/s
Stream #0.1: Audio: mp2, 44100 Hz, mono, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #1.0 -> #0.1
Press [q] to stop encoding
frame= 25 q=10.0 Lsize= 325kB time=1.0 bitrate=2659.5kbits/s
video:316kB audio:8kB global headers:0kB muxing overhead 0.184135%
mat at verone:~/ffmpeg/tests> ../ffmpeg_g -y -bitexact -dct_algo 1 -idct_algo 2 -i
./data/b-libav.nut -f crc ./data/ffmpeg.crc
ffmpeg version 0.4.9-pre1, build 4755, Copyright (c) 2000-2004 Fabrice Bellard
configuration: --cc=gcc -m32
built on May 19 2005 11:12:34, gcc: 3.4.2
[nut @ 0x101c28fc]Stream header 0 checksum mismatch
[nut @ 0x101c28fc]Stream header 1 checksum mismatch
Segmentation fault
mat at verone:~/ffmpeg/tests> gdb ../ffmpeg_g
GNU gdb 6.1
Copyright 2004 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 "ppc-suse-linux"...Using host libthread_db library
"/lib/tls/libthread_db.so.1".
(gdb) r -y -bitexact -dct_algo 1 -idct_algo 2 -i ./data/b-libav.nut -f crc
./data/ffmpeg.crc
Starting program: /home/mat/ffmpeg/ffmpeg_g -y -bitexact -dct_algo 1 -idct_algo
2 -i ./data/b-libav.nut -f crc ./data/ffmpeg.crc
ffmpeg version 0.4.9-pre1, build 4755, Copyright (c) 2000-2004 Fabrice Bellard
configuration: --cc=gcc -m32
built on May 19 2005 11:12:34, gcc: 3.4.2
[nut @ 0x101c28fc]Stream header 0 checksum mismatch
[nut @ 0x101c28fc]Stream header 1 checksum mismatch
Program received signal SIGSEGV, Segmentation fault.
0x10028f68 in update_adler32 (adler=0,
buf=0x16eac2f <Address 0x16eac2f out of bounds>, len=4294829295)
at crc.c:48
48 DO16(buf);
(gdb) bt
#0 0x10028f68 in update_adler32 (adler=0,
buf=0x16eac2f <Address 0x16eac2f out of bounds>, len=4294829295)
at crc.c:48
#1 0x100598d4 in fill_buffer (s=0x80078071) at aviobuf.c:264
#2 0x10059a04 in get_byte (s=0x1028d090) at aviobuf.c:304
#3 0x10044e10 in nut_read_header (s=0x1028d080, ap=0x16eac2f) at nut.c:363
#4 0x10017410 in av_open_input_stream (ic_ptr=0xffffd930, pb=0xfffffffb,
filename=0xffffe623 "./data/b-libav.nut", fmt=0x102219f0, ap=0xffffd8e0)
at utils.c:446
#5 0x1001d2d4 in av_open_input_file (ic_ptr=0xffffd930,
filename=0xffffe623 "./data/b-libav.nut", fmt=0x102219f0, buf_size=0,
ap=0x4e530000) at utils.c:557
#6 0x100116d0 in opt_input_file (filename=0xffffe623 "./data/b-libav.nut")
at ffmpeg.c:2887
#7 0x100165fc in parse_options (argc=12, argv=0xffffe404, options=0x101c1478)
at cmdutils.c:89
#8 0x1001457c in main (argc=12, argv=0xffffe404) at ffmpeg.c:4217
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x10028f48 to 0x10028f88:
0x10028f48 <update_adler32+284>: addi r9,r10,1
0x10028f4c <update_adler32+288>: lbz r3,1(r10)
0x10028f50 <update_adler32+292>: add r7,r8,r4
0x10028f54 <update_adler32+296>: add r0,r11,r8
0x10028f58 <update_adler32+300>: lbz r6,1(r9)
0x10028f5c <update_adler32+304>: addi r9,r9,1
0x10028f60 <update_adler32+308>: add r10,r7,r3
0x10028f64 <update_adler32+312>: add r4,r0,r7
0x10028f68 <update_adler32+316>: lbz r8,1(r9)
0x10028f6c <update_adler32+320>: add r3,r4,r10
0x10028f70 <update_adler32+324>: add r11,r10,r6
0x10028f74 <update_adler32+328>: addi r4,r9,2
0x10028f78 <update_adler32+332>: add r10,r11,r8
0x10028f7c <update_adler32+336>: add r6,r3,r11
0x10028f80 <update_adler32+340>: add r3,r6,r10
0x10028f84 <update_adler32+344>: addi r12,r12,-16
End of assembler dump.
(gdb) info all-registers
r0 0x16e8873 24021107
r1 0xffffcaf0 4294953712
r2 0x4004b860 1074051168
r3 0x0 0
r4 0x16eac2f 24030255
r5 0xfffde4ef 4294829295
r6 0x0 0
r7 0x23bc 9148
r8 0x23bc 9148
r9 0x102a5fff 271212543
r10 0x23bc 9148
r11 0x16e64b7 24011959
r12 0xb80 2944
r13 0x10234888 270747784
r14 0x0 0
r15 0x0 0
r16 0x4e530000 1314062336
r17 0x1028d080 271110272
r18 0x4e531140 1314066752
r19 0x5bf2f9db 1542650331
r20 0x0 0
r21 0x1028e000 271114240
r22 0x1028d080 271110272
---Type <return> to continue, or q <return> to quit---
r23 0x10030000 268632064
r24 0x1028d090 271110288
r25 0x2f230000 790822912
r26 0xeeca0000 4006215680
r27 0x1028d090 271110288
r28 0x0 0
r29 0x0 0
r30 0xfff1 65521
r31 0x80078071 2147975281
f0 -0.80000001192092896 (raw 0xbfe99999a0000000)
f1 0 (raw 0x0000000000000000)
f2 0 (raw 0x0000000000000000)
f3 0 (raw 0x0000000000000000)
f4 0 (raw 0x0000000000000000)
f5 0 (raw 0x0000000000000000)
f6 0 (raw 0x0000000000000000)
f7 0 (raw 0x0000000000000000)
f8 0 (raw 0x0000000000000000)
f9 0 (raw 0x0000000000000000)
f10 0 (raw 0x0000000000000000)
f11 0 (raw 0x0000000000000000)
f12 0 (raw 0x0000000000000000)
f13 4.9406564584124654e-324 (raw 0x0000000000000001)
---Type <return> to continue, or q <return> to quit---
f14 0 (raw 0x0000000000000000)
f15 0 (raw 0x0000000000000000)
f16 0 (raw 0x0000000000000000)
f17 0 (raw 0x0000000000000000)
f18 0 (raw 0x0000000000000000)
f19 0 (raw 0x0000000000000000)
f20 0 (raw 0x0000000000000000)
f21 0 (raw 0x0000000000000000)
f22 0 (raw 0x0000000000000000)
f23 0 (raw 0x0000000000000000)
f24 0 (raw 0x0000000000000000)
f25 0 (raw 0x0000000000000000)
f26 0 (raw 0x0000000000000000)
f27 0 (raw 0x0000000000000000)
f28 0 (raw 0x0000000000000000)
f29 0 (raw 0x0000000000000000)
f30 0 (raw 0x0000000000000000)
f31 0 (raw 0x0000000000000000)
pc 0x10028f68 268603240
ps 0xd932 55602
cr 0x24042448 604251208
lr 0x100598d4 268802260
ctr 0xb8 184
---Type <return> to continue, or q <return> to quit---
xer 0x0 0
fpscr 0x0 0
vr0 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr1 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr2 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr3 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr4 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr5 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr6 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
---Type <return> to continue, or q <return> to quit---
vr7 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr8 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr9 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr10 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr11 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr12 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr13 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr14 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
---Type <return> to continue, or q <return> to quit---
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr15 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr16 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr17 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr18 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr19 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr20 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr21 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr22 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
---Type <return> to continue, or q <return> to quit---
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr23 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr24 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr25 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr26 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr27 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr28 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr29 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
---Type <return> to continue, or q <return> to quit---
vr30 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vr31 {uint128 = 0x00000000000000000000000000000000, v4_float = {0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}}
vscr 0x0 0
vrsave 0x0 0
More information about the ffmpeg-devel
mailing list