Thread: [Fxruby-users] Segfaults
Status: Inactive
Brought to you by:
lyle
|
From: Gilles F. <gil...@fr...> - 2004-04-02 22:22:54
|
Hi Lyle, It's been long time since I've tried FXRuby intensively :o) I'm back with the same kind of segfaults I had then. For example FXEvent appears corrupted after a while in an onPaint callback. I don't have a simple test case yet. I'll try to narrow the probelm using valgrind. The bug vanishes when GC is disabled. Just to try, I've launched an old test case (not related to the above bug) I used when there were problems with TreeList items. Segfault again. I send it to you by private mail. My box runs : - Debian/sarge GNU/Linux - fox-1.0.42 - ruby 1.8 - FXRuby 1.0.28 HTH. _gilles. |
|
From: Gilles F. <gil...@fr...> - 2004-04-03 00:07:59
|
Me again... Here is a valgrind output for the first bug reported in my previous=20 mail. It seems to be related with GCing FXTableItem. Tell me if it is=20 sufficient for you to find the actual problem. _gilles. maison:~/Mirrage$ valgrind --suppressions=3Druby.supp=20 --gen-suppressions=3Dyes ruby application.rb =3D=3D11753=3D=3D Memcheck, a memory error detector for x86-linux. =3D=3D11753=3D=3D Copyright (C) 2002-2004, and GNU GPL'd, by Julian Sewar= d. =3D=3D11753=3D=3D Using valgrind-2.1.1, a program supervision framework f= or=20 x86-linux. =3D=3D11753=3D=3D Copyright (C) 2000-2004, and GNU GPL'd, by Julian Sewar= d. =3D=3D11753=3D=3D For more details, rerun with: -v =3D=3D11753=3D=3D =3D=3D11753=3D=3D Invalid read of size 4 =3D=3D11753=3D=3D at 0x3CA4EB63: FXObject::getClassName() const (in=20 /usr/lib/libFOX-1.0.so.0.0.42) =3D=3D11753=3D=3D by 0x3C7BE6DA: FXRbTableItem::markfunc(FXTableItem*)= (in=20 /usr/local/lib/site_ruby/1.8/i386-linux/fox.so) =3D=3D11753=3D=3D by 0x3C077002: (within /usr/lib/libruby1.8.so.1.8.1) =3D=3D11753=3D=3D by 0x3C076B53: (within /usr/lib/libruby1.8.so.1.8.1) =3D=3D11753=3D=3D Address 0x3D94CA60 is 0 bytes inside a block of size 2= 0 free'd =3D=3D11753=3D=3D at 0x3C021A3C: operator delete(void*) (vg_replace_ma= lloc.c:129) =3D=3D11753=3D=3D by 0x3CA7E843: FXTableItem::~FXTableItem() (in=20 /usr/lib/libFOX-1.0.so.0.0.42) =3D=3D11753=3D=3D by 0x3CA86634: FXTable::~FXTable() (in=20 /usr/lib/libFOX-1.0.so.0.0.42) =3D=3D11753=3D=3D =3D=3D11753=3D=3D ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ---- = n =3D=3D11753=3D=3D =3D=3D11753=3D=3D Invalid read of size 4 =3D=3D11753=3D=3D at 0x3CA4EB66: FXObject::getClassName() const (in=20 /usr/lib/libFOX-1.0.so.0.0.42) =3D=3D11753=3D=3D by 0x3C7BE6DA: FXRbTableItem::markfunc(FXTableItem*)= (in=20 /usr/local/lib/site_ruby/1.8/i386-linux/fox.so) =3D=3D11753=3D=3D by 0x3C077002: (within /usr/lib/libruby1.8.so.1.8.1) =3D=3D11753=3D=3D by 0x3C076B53: (within /usr/lib/libruby1.8.so.1.8.1) =3D=3D11753=3D=3D Address 0x3 is not stack'd, malloc'd or free'd =3D=3D11753=3D=3D =3D=3D11753=3D=3D ---- Print suppression ? --- [Return/N/n/Y/y/C/c] ---- = n ./donnees.rb:20: [BUG] Segmentation fault ruby 1.8.1 (2004-02-03) [i386-linux] =3D=3D11753=3D=3D =3D=3D11753=3D=3D Process terminating with default action of signal 6 (SI= GABRT):=20 dumping core =3D=3D11753=3D=3D at 0x3C1AD571: kill (in /lib/libc-2.3.2.so) =3D=3D11753=3D=3D by 0x3C01AB7B: gsignal (vg_intercept.c:65) =3D=3D11753=3D=3D by 0x3C1AE837: abort (in /lib/libc-2.3.2.so) =3D=3D11753=3D=3D by 0x3C055D90: rb_bug (in /usr/lib/libruby1.8.so.1.8= .1) =3D=3D11753=3D=3D =3D=3D11753=3D=3D ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 68= 2232=20 from 10) =3D=3D11753=3D=3D malloc/free: in use at exit: 4098868 bytes in 80068 blo= cks. =3D=3D11753=3D=3D malloc/free: 446726 allocs, 366658 frees, 13775889 byte= s=20 allocated. =3D=3D11753=3D=3D For a detailed leak analysis, rerun with: --leak-check= =3Dyes =3D=3D11753=3D=3D For counts of detected errors, rerun with: -v Abandon maison:~/Mirrage$ Gilles Filippini a =E9crit : > Hi Lyle, >=20 > It's been long time since I've tried FXRuby intensively :o) > I'm back with the same kind of segfaults I had then. >=20 > For example FXEvent appears corrupted after a while in an onPaint=20 > callback. I don't have a simple test case yet. I'll try to narrow the=20 > probelm using valgrind. The bug vanishes when GC is disabled. >=20 > Just to try, I've launched an old test case (not related to the above=20 > bug) I used when there were problems with TreeList items. Segfault=20 > again. I send it to you by private mail. >=20 > My box runs : > - Debian/sarge GNU/Linux > - fox-1.0.42 > - ruby 1.8 > - FXRuby 1.0.28 > HTH. >=20 > _gilles. >=20 |
|
From: Lyle J. <ly...@kn...> - 2004-04-03 02:46:46
|
On Apr 2, 2004, at 4:23 PM, Gilles Filippini wrote: > It's been long time since I've tried FXRuby intensively :o) > I'm back with the same kind of segfaults I had then. OK. > For example FXEvent appears corrupted after a while in an onPaint > callback. I don't have a simple test case yet. I'll try to narrow the > probelm using valgrind. The bug vanishes when GC is disabled. Yes, if you can send me a simple test case for this one, please do. > Just to try, I've launched an old test case (not related to the above > bug) I used when there were problems with TreeList items. Segfault > again. Yes, I still have this test case and run it before each release ;) It is the "stress1.rb" case, under the FXRuby tests directory. How many iterations did it take for this one to crash on your machine? I ask because I'm running it right now (with my development version of FXRuby) and so far it's gotten to "count=1800" without crashing. I will go back and build FXRuby-1.0.28 from the earlier sources, but I'm fairly sure I ran this test before releasing that version too. |
|
From: Gilles F. <gil...@fr...> - 2004-04-04 08:22:33
|
Lyle Johnson a =E9crit : >=20 > On Apr 2, 2004, at 4:23 PM, Gilles Filippini wrote: >=20 >> It's been long time since I've tried FXRuby intensively :o) >> I'm back with the same kind of segfaults I had then. >=20 >=20 > OK. >=20 >> For example FXEvent appears corrupted after a while in an onPaint=20 >> callback. I don't have a simple test case yet. I'll try to narrow the=20 >> probelm using valgrind. The bug vanishes when GC is disabled. >=20 >=20 > Yes, if you can send me a simple test case for this one, please do. >=20 >> Just to try, I've launched an old test case (not related to the above=20 >> bug) I used when there were problems with TreeList items. Segfault aga= in. >=20 >=20 > Yes, I still have this test case and run it before each release ;) It i= s=20 > the "stress1.rb" case, under the FXRuby tests directory. >=20 > How many iterations did it take for this one to crash on your machine? = I=20 > ask because I'm running it right now (with my development version of=20 > FXRuby) and so far it's gotten to "count=3D1800" without crashing. I wi= ll=20 > go back and build FXRuby-1.0.28 from the earlier sources, but I'm fairl= y=20 > sure I ran this test before releasing that version too. >=20 It takes about 60 iterations on may box. But this problems may eventualy=20 be unrelated to FXRuby: - the segfault occurs without any Ruby msg. It's a brutal segfault: ... count =3D 58 count =3D 59 Erreur de segmentation maison:~/devel/bug$ - I've run the very same test case using valgrind and it's gone as far=20 as 6000+ before I stop it. Well... I don't know where to look now :/ _gilles. |