Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
Hello. I started building mpeg2dec_onroot against the actual libmpeg2-4-dev we have in debian. As expected, there are changes to be made. The first one is to use mpeg2_tag_picture() instead of mpeg2_pts() which has been droped. Second, we should use a pointer to mpeg2dec: - static mpeg2dec_t mpeg2dec; + static mpeg2dec_t *mpeg2dec; The last change to made is the most difficult one: the function mpeg2dec_decode_data does not exist anymore, and no other function has the same prototype. It seems that we should use mpeg2dec_buffer() which takes the same args but return a stat einstead of a frame number. Moreover, data has to be parsed by mpeg2dec_parse(). I cannot manage currently to have it working well, any help is welcome :) Spot, if you can take a look at this migration ,I would be glad :-) -- - Alexis Sukrieh -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
* Paul Brossier ([EMAIL PROTECTED]) disait : Alexis, i noticed another issue: a copy of the mpeg2 library is included in the source and compiled. spot, i see parts of the mpeg2 code were modified, but it would be much better if mpeg2dec_onroot could be linked against debian's libmpeg2-4. I tried to build a package depending on mpeg2dec and libmpeg2-4, but unfortunately, electrichseep's customized version of mpeg2dec has special switches (-w and -f) that don't exist in the official mepg2dec. Moreover, if I disable those switch in electricsheep, I got the following error: ./electricsheep mpeg2dec-0.4.0 - by Michel Lespinasse [EMAIL PROTECTED] and Aaron Holtzman Unaligned buffers. Anyone know how to fix this ? Then, it doesn't seem to be an easy game to switch to the official mpeg2dec binary, electricsheep is deeply bound to its own version. -- - Alexis Sukrieh -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
On Fri, Jul 15, 2005 at 02:58:17PM +0200, Alexis Sukrieh wrote: * Paul Brossier ([EMAIL PROTECTED]) disait : Alexis, i noticed another issue: a copy of the mpeg2 library is included in the source and compiled. spot, i see parts of the mpeg2 code were modified, but it would be much better if mpeg2dec_onroot could be linked against debian's libmpeg2-4. I tried to build a package depending on mpeg2dec and libmpeg2-4, but unfortunately, electrichseep's customized version of mpeg2dec has special switches (-w and -f) that don't exist in the official mepg2dec. mmh, i was more thinking about shipping mpeg2dec_root linked against the libmpeg2-4, not replaced by mpeg2dec. Of course, another approach would be to contact mpeg2dec upstream and ask them these features :-) bye, piem -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
tags 318003 patch thanks Hi, On Wed, Jul 13, 2005 at 11:49:57AM -0700, [EMAIL PROTECTED] wrote: ok that's progress at least. i don't understand how it's failing though. what do you see if you run it from the command line? a window opened but never get refreshed (as if it was in sleep mode). nothing was printed on the console. today i upgraded to the latest xlibs that comes along xorg-x11, and this behaviour went away. i can now see the movie fine, and the screensaver works as expected. beautiful. i am not really up to downgrade xlibs and co, but i guess the problem is reproducible on a current testing install. for now this bug can probably be closed when the attached patch gets in. what do you get form electricsheep --debug 1? now it's working, i get this: $ electricsheep --debug 1 decoder execvp mpeg2dec_onroot -f 23 -w -1 found new anim id=13215. play anim x=7 id=13215 iters=1. history = 13215 succ x=2 id=9910 h=300 lsucc to 9910, lnsuccs=1. play anim x=2 id=9910 iters=2. history = 9910 13215 handle_sig_term display 2 cleanup. handle_sig_term main 15 handle_sig_term display 15 handle_sig_term download 15 cleanup. cleanup. cleanup. Terminated what differences are you aware between the bundled mpeg2lib and debian's? from the README file in electricsheep/mpeg2dec, i thought you would know! :-) the version shipped with electricsheep is 0.2.1, the version currently in debian is 0.4.0b. the diffs are quit large, below are the relevant changelog entries. diff -ruNad electricsheep-2.6.2/mpeg2dec/ChangeLog mpeg2dec-0.4.0b/ChangeLog --- electricsheep-2.6.2/mpeg2dec/ChangeLog 2004-12-15 07:21:33.0 + +++ mpeg2dec-0.4.0b/ChangeLog 2003-12-23 11:51:16.0 + @@ -1,3 +1,26 @@ +mpeg2dec-0.4.0 Tue Dec 23 03:04:35 PST 2003 +-support for 4:2:2-profile streams as well as 4:4:4 format +-extra robustness with extensive test framework (including bad streams etc) +-support for concatenated streams +-helper library for common color conversion formats (currently rgb and uyvy) +-sparc VIS MC optimizations from David Miller +-new set-stride and decoder-reset functions +-some code samples for (very basic) documentation + +mpeg2dec-0.3.1 Fri Dec 13 22:15:36 PST 2002 +-integrated CPU detection code +-alpha IDCT/MC optimizations +-C IDCT optimizations +-fixed all known memory leaks +-workarounds for HPPA/IA64/sparc build issues + +mpeg2dec-0.3.0 Wed Nov 27 23:23:23 PST 2002 +-first release using the new libmpeg2 API +-improved error handling - does not seek to the next sequence header anymore +-more minor optimizations (about 7% faster than 0.2.1) +-support for streams higher than 2800 pixels +-added SIMD optimizations to the VC++ port + mpeg2dec-0.2.1 Sun Mar 17 23:24:04 PST 2002 -altivec optimizations - provides 2.5x speedup for g4 processors -fixed MC code - should not crash on bad streams anymore cheers, piem diff -ruNad electricsheep-2.6.2/electricsheep.c elec/electricsheep-2.6.2/electricsheep.c --- electricsheep-2.6.2/electricsheep.c 2005-06-06 22:51:32.0 +0100 +++ elec/electricsheep-2.6.2/electricsheep.c2005-07-14 09:38:55.0 +0100 @@ -1655,8 +1655,8 @@ void flags_init(int *argc, char ***argv) { char *arg0 = (*argv)[0]; -char *bracket_begin; -char *bracket_end; +char *bracket_begin = 0; +char *bracket_end = 0; while (*argc 1 (*argv)[1][0] == '-') { char *o = (*argv)[1];
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
On Tue, Jul 12, 2005 at 01:58:17PM -0700, [EMAIL PROTECTED] wrote: thanks for letting me know. i don't have a powerpc either. paul, if you can compile from source and reproduce the crash and email me the trace, perhaps we can debug remotely. best, -spot after compiling with the package with nostrip: $ ulimit -c unlimited $ electricsheep Segmentation fault (core dumped) $ gdb electricsheep core GNU gdb 6.3-debian 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 powerpc-linux...Using host libthread_db library /lib/libthread_db.so.1. Core was generated by `electricsheep'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/lib/libexpat.so.1...done. Loaded symbols for /usr/lib/libexpat.so.1 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld.so.1...done. Loaded symbols for /lib/ld.so.1 #0 0x10004134 in parse_bracket (arg=0x1 Address 0x1 out of bounds, bracket_id=0x1001f9b4, bracket_time=0x1001f9ac) at electricsheep.c:1567 1567 if (0 == arg || 0 == arg[0]) return; hope this helps, cheers, piem Alexis Sukrieh wrote: Hi. Below is a bug report submitted to the Debina Bug Tracking System agains the electricsheep package, version 2.6.2-1. Unfortunately, a segfault occurs on powerpc architecture, and I don't have such a thing for debugging... - Forwarded message from Paul Brossier [EMAIL PROTECTED] - Subject: Bug#318003: electricsheep: segfaults on powerpc Date: Tue, 12 Jul 2005 21:12:28 +0100 From: Paul Brossier [EMAIL PROTECTED] To: Debian Bug Tracking System [EMAIL PROTECTED] Reply-To: Paul Brossier [EMAIL PROTECTED], [EMAIL PROTECTED] X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE autolearn=no version=2.60-bugs.debian.org_2005_01_02 X-Mailer: reportbug 3.15 Package: electricsheep Version: 2.6.2-1 Severity: grave Justification: renders package unusable i just updated to the last electricsheep package. before i got something along the lines of 'cannot resolve v32.electricsheep.net'. now it segfaults: $ electricsheep Segmentation fault (core dumped) the output of gdb is not very helpful since the debugging symbols are stripped: Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/ld.so.1 #0 0x10004134 in ?? () cheers, piem -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.12-rc5-powerpc Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Versions of packages electricsheep depends on: ii curl 7.14.0-2Get a file from an HTTP, HTTPS, FT ii debconf 1.4.52 Debian configuration management sy ii libc62.3.2.ds1-22GNU C Library: Shared libraries an ii libexpat11.95.8-3XML parsing C library - runtime li ii libice6 4.3.0.dfsg.1-14 Inter-Client Exchange library ii libjpeg-progs6b-10 Programs for manipulating JPEG fil ii libjpeg626b-10 The Independent JPEG Group's JPEG ii libpng12-0 1.2.8rel-1 PNG library - runtime ii libsm6 4.3.0.dfsg.1-14 X Window System Session Management ii libx11-6 4.3.0.dfsg.1-14 X Window System protocol client li ii libxext6 4.3.0.dfsg.1-14 X Window System miscellaneous exte ii libxv1 4.3.0.dfsg.1-14 X Window System video extension li ii xlibs4.3.0.dfsg.1-14 X Keyboard Extension (XKB) configu ii xloadimage 4.1-14.2Graphics file viewer under X11 ii zlib1g 1:1.2.2-8 compression library - runtime electricsheep recommends no packages. -- no debconf information - End forwarded message - -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
looks like uninitialized data. try changing lines 1659 + 1660 to look like this: flags_init(int *argc, char ***argv) { char *arg0 = (*argv)[0]; char *bracket_begin = 0; char *bracket_end = 0; Paul Brossier wrote: On Tue, Jul 12, 2005 at 01:58:17PM -0700, [EMAIL PROTECTED] wrote: thanks for letting me know. i don't have a powerpc either. paul, if you can compile from source and reproduce the crash and email me the trace, perhaps we can debug remotely. best, -spot after compiling with the package with nostrip: $ ulimit -c unlimited $ electricsheep Segmentation fault (core dumped) $ gdb electricsheep core GNU gdb 6.3-debian 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 powerpc-linux...Using host libthread_db library /lib/libthread_db.so.1. Core was generated by `electricsheep'. Program terminated with signal 11, Segmentation fault. Reading symbols from /usr/lib/libexpat.so.1...done. Loaded symbols for /usr/lib/libexpat.so.1 Reading symbols from /lib/libc.so.6...done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld.so.1...done. Loaded symbols for /lib/ld.so.1 #0 0x10004134 in parse_bracket (arg=0x1 Address 0x1 out of bounds, bracket_id=0x1001f9b4, bracket_time=0x1001f9ac) at electricsheep.c:1567 1567 if (0 == arg || 0 == arg[0]) return; hope this helps, cheers, piem Alexis Sukrieh wrote: Hi. Below is a bug report submitted to the Debina Bug Tracking System agains the electricsheep package, version 2.6.2-1. Unfortunately, a segfault occurs on powerpc architecture, and I don't have such a thing for debugging... - Forwarded message from Paul Brossier [EMAIL PROTECTED] - Subject: Bug#318003: electricsheep: segfaults on powerpc Date: Tue, 12 Jul 2005 21:12:28 +0100 From: Paul Brossier [EMAIL PROTECTED] To: Debian Bug Tracking System [EMAIL PROTECTED] Reply-To: Paul Brossier [EMAIL PROTECTED], [EMAIL PROTECTED] X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE autolearn=no version=2.60-bugs.debian.org_2005_01_02 X-Mailer: reportbug 3.15 Package: electricsheep Version: 2.6.2-1 Severity: grave Justification: renders package unusable i just updated to the last electricsheep package. before i got something along the lines of 'cannot resolve v32.electricsheep.net'. now it segfaults: $ electricsheep Segmentation fault (core dumped) the output of gdb is not very helpful since the debugging symbols are stripped: Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/ld.so.1 #0 0x10004134 in ?? () cheers, piem -- System Information: Debian Release: testing/unstable APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.12-rc5-powerpc Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Versions of packages electricsheep depends on: ii curl 7.14.0-2Get a file from an HTTP, HTTPS, FT ii debconf 1.4.52 Debian configuration management sy ii libc62.3.2.ds1-22GNU C Library: Shared libraries an ii libexpat11.95.8-3XML parsing C library - runtime li ii libice6 4.3.0.dfsg.1-14 Inter-Client Exchange library ii libjpeg-progs6b-10 Programs for manipulating JPEG fil ii libjpeg626b-10 The Independent JPEG Group's JPEG ii libpng12-0 1.2.8rel-1 PNG library - runtime ii libsm6 4.3.0.dfsg.1-14 X Window System Session Management ii libx11-6 4.3.0.dfsg.1-14 X Window System protocol client li ii libxext6 4.3.0.dfsg.1-14 X Window System miscellaneous exte ii libxv1 4.3.0.dfsg.1-14 X Window System video extension li ii xlibs4.3.0.dfsg.1-14 X Keyboard Extension (XKB) configu ii xloadimage 4.1-14.2Graphics file viewer under X11 ii zlib1g 1:1.2.2-8 compression library - runtime electricsheep recommends no packages. -- no debconf information - End forwarded message - -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#318003: (forw) [EMAIL PROTECTED]: Bug#318003: electricsheep: segfaults on powerpc]
On Tue, Jul 12, 2005 at 02:25:20PM -0700, [EMAIL PROTECTED] wrote: looks like uninitialized data. try changing lines 1659 + 1660 to look like this: flags_init(int *argc, char ***argv) { char *arg0 = (*argv)[0]; char *bracket_begin = 0; char *bracket_end = 0; well, it doesn't crash anymore, but i can't have it display anything either. the movie i downloaded looks nice though: $ ls -la .sheep total 4412 drwxr-xr-x 2 piem piem4096 2005-07-12 23:30 . drwxr-xr-x 90 piem piem8192 2005-07-12 23:30 .. -rw-r--r-- 1 piem piem 4484464 2005-07-12 23:23 00191=10920=10920=10920.mpg -rw-r--r-- 1 piem piem 0 2005-07-12 23:22 gen191 -rw-r--r-- 1 piem piem 18 2005-07-12 23:30 id -rwx-- 1 piem piem 0 2005-07-12 23:30 lock prwx-- 1 piem piem 0 2005-07-12 23:30 overlay_fifo -rw-r--r-- 1 piem piem 22 2005-07-12 23:19 rc 'strace electricsheep' ends with: fork() = 29764 --- SIGCHLD (Child exited) @ 0 (0) --- waitpid(29764, [{WIFEXITED(s) WEXITSTATUS(s) == 0}], 0) = 29764 open(/home/piem/.sheep/rc, O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=22, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x30027000 read(3, 1000\nA8BFC33CC3BF1558\n, 4096) = 22 close(3)= 0 munmap(0x30027000, 4096)= 0 creat(/home/piem/.sheep/lock, 0700) = 3 fcntl64(3, F_SETLK, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}) = 0 time(NULL) = 1121207531 fork() = 29765 --- SIGCHLD (Child exited) @ 0 (0) --- waitpid(29765, [{WIFEXITED(s) WEXITSTATUS(s) == 0}], 0) = 29765 fork() = 29766 fork() = 29769 rt_sigprocmask(SIG_BLOCK, [CHLD], [RTMIN], 8) = 0 rt_sigaction(SIGCHLD, NULL, {SIG_DFL}, 8) = 0 rt_sigprocmask(SIG_SETMASK, [RTMIN], NULL, 8) = 0 nanosleep({600, 0}, Alexis, i noticed another issue: a copy of the mpeg2 library is included in the source and compiled. spot, i see parts of the mpeg2 code were modified, but it would be much better if mpeg2dec_onroot could be linked against debian's libmpeg2-4. bye, piem -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]