Is there any chance that these bugs might be fixed?

Geoffrey Alan Washburn wrote:
Geoffrey Alan Washburn wrote:
Geoffrey Alan Washburn wrote:


Hmmm. I'm stumped as to what to do next. I'm assuming no one else has seen behavior like this then? I guess I'll just have to stick with ion2 and try examining more closely what is happening with gdb when I have more time.

In case anyone is interested, I've finally had a chance to do some detective work on this problem. My investigations seem to point to the problem actually occurring in Lua, while it is parsing in the configuration files, rather than in ion3. I've tried recompiling Lua to see if maybe it had gotten out of sync with the system libc, but that didn't help.

    Any more ideas folks?



So as another datapoint, if I run ion-3ds-20051029 from within valgrind (into a trusty Xnest session) like so

    valgrind --tool=memcheck ./ion3 -display :1 >& log

ion3 appears to run just fine, though valgrind spits out the following bits of information:


==17655== Memcheck, a memory error detector for x86-linux.
==17655== Copyright (C) 2002-2004, and GNU GPL'd, by Julian Seward et al.
==17655== Using valgrind-2.2.0, a program supervision framework for x86-linux.
==17655== Copyright (C) 2000-2004, and GNU GPL'd, by Julian Seward et al.
==17655== For more details, rerun with: -v
==17655==
./ion3: No encoding given in LC_CTYPE.
==17655== Invalid read of size 1
==17655==    at 0x1BB04D65: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==    by 0x807139B: extl_l1_call_handler2 (luaextl.c:1755)
==17655==  Address 0x1BDDBAAC is 4 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 1
==17655==    at 0x1BB04D25: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==    by 0x807139B: extl_l1_call_handler2 (luaextl.c:1755)
==17655==  Address 0x1BDDBAAC is 4 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid read of size 1
==17655==    at 0x1BB031A5: re_compile_internal (in /lib/tls/libc.so.6)
==17655==    by 0x1BB04D41: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==  Address 0x1BDDBAAC is 4 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 1
==17655==    at 0x1BB031C7: re_compile_internal (in /lib/tls/libc.so.6)
==17655==    by 0x1BB04D41: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==  Address 0x1BDDBAAC is 4 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 4
==17655==    at 0x1BB031CA: re_compile_internal (in /lib/tls/libc.so.6)
==17655==    by 0x1BB04D41: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 4
==17655==    at 0x1BB03469: re_compile_internal (in /lib/tls/libc.so.6)
==17655==    by 0x1BB04D41: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid read of size 4
==17655==    at 0x1BB02821: parse_expression (in /lib/tls/libc.so.6)
==17655==    by 0x1BB02F40: parse_branch (in /lib/tls/libc.so.6)
==17655==    by 0x1BB03080: parse_reg_exp (in /lib/tls/libc.so.6)
==17655==    by 0x1BB034B5: re_compile_internal (in /lib/tls/libc.so.6)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 4
==17655==    at 0x1BB0282A: parse_expression (in /lib/tls/libc.so.6)
==17655==    by 0x1BB02F40: parse_branch (in /lib/tls/libc.so.6)
==17655==    by 0x1BB03080: parse_reg_exp (in /lib/tls/libc.so.6)
==17655==    by 0x1BB034B5: re_compile_internal (in /lib/tls/libc.so.6)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid read of size 4
==17655==    at 0x1BB02821: parse_expression (in /lib/tls/libc.so.6)
==17655==    by 0x1BB02FB0: parse_branch (in /lib/tls/libc.so.6)
==17655==    by 0x1BB03080: parse_reg_exp (in /lib/tls/libc.so.6)
==17655==    by 0x1BB034B5: re_compile_internal (in /lib/tls/libc.so.6)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid write of size 4
==17655==    at 0x1BB0282A: parse_expression (in /lib/tls/libc.so.6)
==17655==    by 0x1BB02FB0: parse_branch (in /lib/tls/libc.so.6)
==17655==    by 0x1BB03080: parse_reg_exp (in /lib/tls/libc.so.6)
==17655==    by 0x1BB034B5: re_compile_internal (in /lib/tls/libc.so.6)
==17655==  Address 0x1BDDBAA8 is 0 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Invalid read of size 1
==17655==    at 0x1BB04735: re_compile_fastmap (in /lib/tls/libc.so.6)
==17655==    by 0x1BB04D5A: regcomp (in /lib/tls/libc.so.6)
==17655==    by 0x8069C6A: ioncore_defshortening (strings.c:262)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==  Address 0x1BDDBAAC is 4 bytes after a block of size 24 alloc'd
==17655== at 0x1B905BAC: malloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x8072724: malloczero (misc.c:21)
==17655==    by 0x8069C54: ioncore_defshortening (strings.c:257)
==17655==    by 0x8066E10: l2chnd_b_ssb____ (exports.c:64)
==17655==
==17655== Syscall param write(buf) contains uninitialised or unaddressable byte(s)
==17655==    at 0x1BB0E533: __write_nocancel (in /lib/tls/libc.so.6)
==17655== by 0x1B98379E: _X11TransWrite (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x1B9668E5: _XFlushInt (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x1B966999: _XReply (in /usr/X11R6/lib/libX11.so.6.2)
==17655== Address 0x1BBC44AD is 77 bytes inside a block of size 16384 alloc'd ==17655== at 0x1B90653D: calloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x1B955D82: XOpenDisplay (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x8058AEE: ioncore_startup (ioncore.c:422)
==17655==    by 0x80582BF: main (ion.c:244)
==17655==
==17655== Syscall param write(buf) contains uninitialised or unaddressable byte(s)
==17655==    at 0x1BB0E533: __write_nocancel (in /lib/tls/libc.so.6)
==17655== by 0x1B98379E: _X11TransWrite (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x1B9668E5: _XFlushInt (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x1B9486BB: XFlush (in /usr/X11R6/lib/libX11.so.6.2)
==17655== Address 0x1BBC44C9 is 105 bytes inside a block of size 16384 alloc'd ==17655== at 0x1B90653D: calloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17655==    by 0x1B955D82: XOpenDisplay (in /usr/X11R6/lib/libX11.so.6.2)
==17655==    by 0x8058AEE: ioncore_startup (ioncore.c:422)
==17655==    by 0x80582BF: main (ion.c:244)
./ion3: Caught signal 2. Dying.
==17655==
==17655== ERROR SUMMARY: 78 errors from 13 contexts (suppressed: 63 from 1)
==17655== malloc/free: in use at exit: 157390 bytes in 3760 blocks.
==17655== malloc/free: 29034 allocs, 25274 frees, 1381173 bytes allocated.
==17655== For a detailed leak analysis,  rerun with: --leak-check=yes
==17655== For counts of detected errors, rerun with: -v


for comparison, if I do the following experiment with ion2

    valgrind --tool=memcheck `which ion` -display :1 >& log

I only get the following errors


==17698== Memcheck, a memory error detector for x86-linux.
==17698== Copyright (C) 2002-2004, and GNU GPL'd, by Julian Seward et al.
==17698== Using valgrind-2.2.0, a program supervision framework for x86-linux.
==17698== Copyright (C) 2000-2004, and GNU GPL'd, by Julian Seward et al.
==17698== For more details, rerun with: -v
==17698==
 >> Unable to find 'debian-menus'.
==17698== Syscall param write(buf) contains uninitialised or unaddressable byte(s)
==17698==    at 0x1BB16533: __write_nocancel (in /lib/tls/libc.so.6)
==17698== by 0x1B9A779E: _X11TransWrite (in /usr/X11R6/lib/libX11.so.6.2)
==17698==    by 0x1B98A8E5: _XFlushInt (in /usr/X11R6/lib/libX11.so.6.2)
==17698==    by 0x1B98A999: _XReply (in /usr/X11R6/lib/libX11.so.6.2)
==17698== Address 0x1BBC0281 is 121 bytes inside a block of size 16384 alloc'd ==17698== at 0x1B90653D: calloc (in /usr/lib/valgrind/vgpreload_memcheck.so)
==17698==    by 0x1B979D82: XOpenDisplay (in /usr/X11R6/lib/libX11.so.6.2)
==17698== by 0x8056453: (within /mnt/eclipse/unsupported/linux/ion-2-20040729/bin/ion) ==17698== by 0x8056645: ioncore_startup (in /mnt/eclipse/unsupported/linux/ion-2-20040729/bin/ion)
==17706==
==17706== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 39 from 1)
==17706== malloc/free: in use at exit: 320778 bytes in 7136 blocks.
==17706== malloc/free: 17245 allocs, 10109 frees, 860548 bytes allocated.
==17706== For a detailed leak analysis,  rerun with: --leak-check=yes
==17706== For counts of detected errors, rerun with: -v
/mnt/eclipse/unsupported/linux/ion-2-20040729/bin/ion: Caught signal 2. Dying.
==17698==
==17698== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 39 from 1)
==17698== malloc/free: in use at exit: 80200 bytes in 3000 blocks.
==17698== malloc/free: 17845 allocs, 14845 frees, 882755 bytes allocated.
==17698== For a detailed leak analysis,  rerun with: --leak-check=yes
==17698== For counts of detected errors, rerun with: -v




Reply via email to