unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
       [not found] ` <m3bpegw0y9.fsf@pobox.com>
@ 2010-04-08 18:06   ` David Pirotte
  2010-04-08 18:53     ` Andy Wingo
  0 siblings, 1 reply; 12+ messages in thread
From: David Pirotte @ 2010-04-08 18:06 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guile-user, guile-gtk, guile-devel

[-- Attachment #1: Type: text/plain, Size: 2751 bytes --]

Hello Andy,
Hi developpers,

Thank you so much for having given a look to this problem. After digging into the
debian packages and trying to rebuild from latest 2.7.99-4 debian source, I
understand that your suggestion was actually already included by Andreas:

	- I know it sounds surprising, but having built myself in the past, and
	  being quite prudent in installing official debian package [list-store
	  missing symbols ...] I now have to make sure that what is installed
	  and running on my machine is the latest 2.7.99-4! I'll do that today

But I have had another type of bug, which I beleive is not related to the one
you looked at, which rarely appears and occurred today, so here it is:

	*** glibc detected *** guile: corrupted double-linked list: 0x08a1ca60 ***
	======= Backtrace: =========

Attached are 2 files: the output that was printed in the terminal and the gdb
backtrace.

	[I know I have to port my code, it's far from being easy: it depends on
	gtrees [recently received support from the creator to make it running in
	guile-1.8 and guile-pg, a prehistoric version which will remain so until
	it's maintainer goes forward [i think he made it clear that he will],  ... 
	gtrees and guile-pg force me to stay in guile-1.6]

	[All these apps are between 13.000 and 30.000 lines of pure scheme code:
	quite a lot of work, to port and test! but I started already...]

In the meantime, I still hope that you and guile-1.6 maintainers can offer a little
support and help me debug:

	 I'll do all my best to provide as much as possible info to get rid of these
	 2 nauty bugs.

Many thanks again,
Long live to guile! I am looking forward to port and test my code with guile-vm!
Cheers,
David

;; --

Le Mon, 22 Mar 2010
21:33:50 +0100, Andy Wingo <wingo@pobox.com> a écrit :

> On Wed 17 Mar 2010 21:09, David Pirotte <david@altosw.be> writes:
> 
> > I know, guile-gnome-0 is obsolate ... But I have no choice right know and really
> > really hope that I can help developers to find out what the problem is and debug
> > it ... 
> 
> As long as you know this :) This was released *five years ago* :)
> 
> Are you using custom tree models? I bet it's something whereby we are
> freeing something with g_free but it was allocated with g_slice_alloc.
> 
> What about this fix (from git revision
> c7101904f2704b3cf7fbde5c02602be01ff37f2b, 2007-12-09), to
> gtk/gw/gtk-support.c:
> 
> @@ -727,7 +761,7 @@ _wrap_gtk_tree_model_iter_next (GtkTreeModel *model,
> GtkTreeIter *iter) 
>      if (gtk_tree_model_iter_next (model, new))
>          return new;
> -    g_free (new);
> +    gtk_tree_iter_free (new);
>      return NULL;
>  }
>      
> Regards,
> 
> Andy

[-- Attachment #2: guile-gnome0-crash-terminal-output.txt --]
[-- Type: text/plain, Size: 4244 bytes --]

...
*** glibc detected *** guile: corrupted double-linked list: 0x08a1ca60 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6[0xb7ce91d4]
/lib/i686/cmov/libc.so.6[0xb7cec1a2]
/lib/i686/cmov/libc.so.6(__libc_malloc+0x95)[0xb7ced595]
/usr/lib/libX11.so.6(_XSend+0x1dc)[0xb721960c]
/usr/lib/libX11.so.6(_XFlush+0x39)[0xb7219c09]
/usr/lib/libX11.so.6(_XFlushGCCache+0xa8)[0xb71ee8e8]
/usr/lib/libX11.so.6(XSetClipMask+0x4f)[0xb720ac0f]
/usr/lib/libgdk-x11-2.0.so.0[0xb7432f98]
/usr/lib/libgdk-x11-2.0.so.0[0xb73fb004]
/usr/lib/libgtk-x11-2.0.so.0[0xb6c70a8a]
/usr/lib/libgtk-x11-2.0.so.0(gtk_paint_layout+0xea)[0xb6c6c8da]
/usr/lib/libgtk-x11-2.0.so.0[0xb6b41e54]
/usr/lib/libgtk-x11-2.0.so.0(gtk_cell_renderer_render+0x106)[0xb6b3a4f6]
/usr/lib/libgtk-x11-2.0.so.0[0xb6cfce5c]
/usr/lib/libgtk-x11-2.0.so.0[0xb6cfdc14]
/usr/lib/libgtk-x11-2.0.so.0[0xb6cf86f9]
/usr/lib/libgtk-x11-2.0.so.0[0xb6cf9ba1]
/usr/lib/libgtk-x11-2.0.so.0[0xb6bef374]
/usr/lib/libgobject-2.0.so.0[0xb7b415e9]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1b2)[0xb7b42f62]
/usr/lib/libgobject-2.0.so.0[0xb7b5709e]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x648)[0xb7b585b8]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x26)[0xb7b58ba6]
/usr/lib/libgtk-x11-2.0.so.0[0xb6d0bafe]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main_do_event+0x500)[0xb6be9090]
/usr/lib/libgdk-x11-2.0.so.0[0xb741738f]
/usr/lib/libgdk-x11-2.0.so.0[0xb741733e]
/usr/lib/libgdk-x11-2.0.so.0[0xb741733e]
/usr/lib/libgdk-x11-2.0.so.0[0xb743fc24]
/usr/lib/libgdk-x11-2.0.so.0[0xb7413b53]
/usr/lib/libgdk-x11-2.0.so.0(gdk_window_process_all_updates+0x13f)[0xb7415b4f]
/usr/lib/libgdk-x11-2.0.so.0[0xb7415bcb]
/usr/lib/libgdk-x11-2.0.so.0[0xb73f1ff8]
/lib/libglib-2.0.so.0[0xb7ab9db1]
/lib/libglib-2.0.so.0(g_main_context_dispatch+0x1f8)[0xb7abbb38]
/lib/libglib-2.0.so.0[0xb7abf3d0]
/lib/libglib-2.0.so.0(g_main_loop_run+0x1bf)[0xb7abf83f]
/usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0[0xb7a45a3d]
/usr/lib/libguile.so.12(scm_internal_dynamic_wind+0x89)[0xb7e75d59]
/usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0(_wrap_g_main_loop_run+0x42)[0xb7a459a2]
/usr/lib/libffi.so.4(ffi_call_SYSV+0x17)[0xb78cf3f3]
/usr/lib/libffi.so.4(ffi_call+0x5e)[0xb78cf23e]
/usr/lib/libgwrap-guile-runtime.so.0[0xb78d63a4]
/usr/lib/libguile.so.12[0xb7ebc197]
/usr/lib/libguile.so.12(scm_deval+0x1e06)[0xb7e85886]
/usr/lib/libguile.so.12(scm_deval+0xc6f)[0xb7e846ef]
/usr/lib/libguile.so.12(scm_deval+0x591)[0xb7e84011]
/usr/lib/libguile.so.12(scm_deval+0x20bf)[0xb7e85b3f]
/usr/lib/libguile.so.12(scm_deval+0xc6f)[0xb7e846ef]
/usr/lib/libguile.so.12(scm_dapply+0x98c)[0xb7e838cc]
/usr/lib/libguile.so.12(scm_apply+0x73)[0xb7e81e83]
/usr/lib/libguile.so.12(scm_call_0+0x2d)[0xb7e879bd]
/usr/lib/libguile.so.12[0xb7ec9c1a]
/usr/lib/libguile.so.12(scm_fill_input+0x3f)[0xb7eae3ff]
/usr/lib/libguile.so.12(scm_getc+0x110)[0xb7eae550]
/usr/lib/libguile.so.12(scm_flush_ws+0x28)[0xb7eb6d08]
/usr/lib/libguile.so.12(scm_read+0x70)[0xb7eb8320]
/usr/lib/libguile.so.12(scm_deval+0x38e3)[0xb7e87363]
/usr/lib/libguile.so.12(scm_deval+0x591)[0xb7e84011]
/usr/lib/libguile.so.12(scm_deval+0x2f09)[0xb7e86989]
/usr/lib/libguile.so.12(scm_dapply+0x98c)[0xb7e838cc]
/usr/lib/libguile.so.12(scm_deval+0x1433)[0xb7e84eb3]
/usr/lib/libguile.so.12(scm_deval+0x2f09)[0xb7e86989]
======= Memory map: ========
08048000-08049000 r-xp 00000000 03:01 70002      /usr/bin/guile-1.6
08049000-0804a000 rwxp 00000000 03:01 70002      /usr/bin/guile-1.6
0804a000-08b22000 rwxp 0804a000 00:00 0          [heap]
b32d2000-b32d3000 ---p b32d2000 00:00 0 
b32d3000-b3ad3000 rwxp b32d3000 00:00 0 
b3ad3000-b3ad4000 ---p b3ad3000 00:00 0 
b3ad4000-b42d4000 rwxp b3ad4000 00:00 0 
b42d4000-b42d5000 ---p b42d4000 00:00 0 
b42d5000-b4ad5000 rwxp b42d5000 00:00 0 
b4ad5000-b4ad6000 ---p b4ad5000 00:00 0 
b4ad6000-b52d6000 rwxp b4ad6000 00:00 0 
b5700000-b5721000 rwxp b5700000 00:00 0 
b5721000-b5800000 ---p b5721000 00:00 0 
b58b9000-b58d5000 r-xp 00000000 03:01 59072      /lib/libgcc_s.so.1
b58d5000-b58d6000 rwxp 0001c000 03:01 59072      /lib/libgcc_s.so.1
b58d6000-b5ad7000 rwxp b58d6000 00:00 0 
b5ad7000-b5aea000 r-xp 00000000 03:01 44362      /usr/lib/libbeagle.so.0.0.0
b5aea000-b5aeb000 rw
david@tabu:/usr/local/share/guile/alto 10 $ 

[-- Attachment #3: guile-gnome0-crash-gdb-backtrace.txt --]
[-- Type: text/plain, Size: 3112 bytes --]

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb7c726c0 (LWP 3847)]
0xffffe410 in __kernel_vsyscall ()
(gdb) backtrace
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7ca5680 in raise () from /lib/i686/cmov/libc.so.6
#2  0xb7ca8d68 in abort () from /lib/i686/cmov/libc.so.6
#3  0xb7cdeabd in ?? () from /lib/i686/cmov/libc.so.6
#4  0x00000010 in ?? ()
#5  0xbfeddcec in ?? ()
#6  0x00000400 in ?? ()
#7  0x00000002 in ?? ()
#8  0xbfeddbec in ?? ()
#9  0xb7dbd1c8 in ?? () from /lib/i686/cmov/libc.so.6
#10 0x00000017 in ?? ()
#11 0xbfee186b in ?? ()
#12 0x00000005 in ?? ()
#13 0xb7dbd1e1 in ?? () from /lib/i686/cmov/libc.so.6
#14 0x00000002 in ?? ()
#15 0xb7dba064 in ?? () from /lib/i686/cmov/libc.so.6
#16 0x0000001c in ?? ()
#17 0xb7dbd1e5 in ?? () from /lib/i686/cmov/libc.so.6
#18 0x00000004 in ?? ()
#19 0xbfede21b in ?? ()
#20 0x00000008 in ?? ()
#21 0xb7dbd1eb in ?? () from /lib/i686/cmov/libc.so.6
#22 0x00000005 in ?? ()
#23 0x00000020 in ?? ()
#24 0xbfeddc1c in ?? ()
#25 0xb7dbd1eb in ?? () from /lib/i686/cmov/libc.so.6
#26 0x00000005 in ?? ()
#27 0xbfeddc20 in ?? ()
#28 0xb7cde911 in ?? () from /lib/i686/cmov/libc.so.6
#29 0xb7dbd1ec in ?? () from /lib/i686/cmov/libc.so.6
#30 0x00000025 in ?? ()
#31 0x00000010 in ?? ()
#32 0xbfeddc3c in ?? ()
#33 0xbfede21b in ?? ()
#34 0x00000008 in ?? ()
#35 0xbfeddc40 in ?? ()
#36 0xbfede21b in ?? ()
#37 0xb7aac8c8 in IA__g_hash_table_lookup (hash_table=0x400, key=0xb7dbd1c8)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/ghash.c:195
#38 0xb7ce91d4 in ?? () from /lib/i686/cmov/libc.so.6
#39 0x00000002 in ?? ()
#40 0xb7dbd1c8 in ?? () from /lib/i686/cmov/libc.so.6
#41 0xbfee186b in ?? ()
#42 0xb7dba064 in ?? () from /lib/i686/cmov/libc.so.6
#43 0xbfede21b in ?? ()
#44 0xb7dba064 in ?? () from /lib/i686/cmov/libc.so.6
#45 0x309e5cb0 in ?? ()
#46 0x63316138 in ?? ()
#47 0x00303661 in ?? ()
#48 0xb7dd5ff4 in ?? () from /lib/i686/cmov/libc.so.6
#49 0x000000e0 in ?? ()
#50 0x000000d0 in ?? ()
#51 0xbfede2e8 in ?? ()
#52 0xb7cec1a2 in ?? () from /lib/i686/cmov/libc.so.6
#53 0x08a1ca60 in ?? ()
#54 0x089ed7d0 in ?? ()
#55 0xb74c740f in ?? () from /usr/lib/libpango-1.0.so.0
#56 0x00040c00 in ?? ()
#57 0x089c4398 in ?? ()
#58 0xb7cea844 in ?? () from /lib/i686/cmov/libc.so.6
#59 0xb74c74ef in ?? () from /usr/lib/libpango-1.0.so.0
#60 0xb7dd71a8 in ?? () from /lib/i686/cmov/libc.so.6
#61 0xb7dbb81a in ?? () from /lib/i686/cmov/libc.so.6
#62 0xb7dbd1c8 in ?? () from /lib/i686/cmov/libc.so.6
#63 0xb7dba0f1 in ?? () from /lib/i686/cmov/libc.so.6
#64 0xb7dba03d in ?? () from /lib/i686/cmov/libc.so.6
#65 0x00002c00 in ?? ()
#66 0x08839f08 in ?? ()
#67 0xb7dd7160 in ?? () from /lib/i686/cmov/libc.so.6
#68 0xb7dd7198 in ?? () from /lib/i686/cmov/libc.so.6
#69 0x00000010 in ?? ()
#70 0x00000002 in ?? ()
#71 0x08839f88 in ?? ()
#72 0x00000002 in ?? ()
#73 0x08a4cf38 in ?? ()
#74 0xbfede2bc in ?? ()
#75 0xb72fd6a1 in ?? () from /usr/lib/libcairo.so.2
#76 0xb7e3989e in pthread_mutex_lock () from /lib/i686/cmov/libpthread.so.0
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb) 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 18:06   ` guile-gnome-0 - guile-1.6.8-6.3 - random crash David Pirotte
@ 2010-04-08 18:53     ` Andy Wingo
  2010-04-08 20:06       ` Thien-Thi Nguyen
                         ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Andy Wingo @ 2010-04-08 18:53 UTC (permalink / raw)
  To: David Pirotte; +Cc: guile-user, guile-gtk, guile-devel, Thien-Thi Nguyen

Hi David,

I'm happy to help, and glad to hear things are going OK. You probably
have the largest guile-gnome-using apps out there... Also, one of these
three lists is probably enough ;)

On Thu 08 Apr 2010 20:06, David Pirotte <david@altosw.be> writes:

> But I have had another type of bug, which I beleive is not related to the one
> you looked at, which rarely appears and occurred today, so here it is:
>
> 	*** glibc detected *** guile: corrupted double-linked list:
> 	0x08a1ca60 ***

I couldn't tell from your backtraces what went on. Be sure to install
the debug packages so that gdb can give symbols.

> 	[I know I have to port my code, it's far from being easy: it depends on
> 	gtrees [recently received support from the creator to make it running in
        ^^
I just downloaded
http://vychodil.inf.upol.cz/research/development/gtrees/download/gtrees-0.5-alpha.tar.bz2,
and it seems to compile fine against 2.0. I did a (load-extension
"./libgtrees" "define_gtrees_module") and that worked, and then
(use-modules (gtrees-module)) and that worked too.

Perhaps you will be able to skip 1.8 ;-) But it should work with 1.8 as well.

> 	guile-1.8 and guile-pg, a prehistoric version which will remain so until
                      ^^ 

No such luck with guile-pg, it will need patches. I even tried applying
debian's patches to see if that would help, but guile-pg uses gh.h.
Copying Thien-Thi, who appears to be the upstream: what is the right
thing to do here? Get it into a project on savannah in git hosting, no?

Regards,

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 18:53     ` Andy Wingo
@ 2010-04-08 20:06       ` Thien-Thi Nguyen
  2010-04-08 22:13         ` Andy Wingo
  2010-04-10 14:23       ` David Pirotte
                         ` (2 subsequent siblings)
  3 siblings, 1 reply; 12+ messages in thread
From: Thien-Thi Nguyen @ 2010-04-08 20:06 UTC (permalink / raw)
  To: guile-user, guile-gtk, guile-devel

() Andy Wingo <wingo@pobox.com>
() Thu, 08 Apr 2010 20:53:17 +0200

   No such luck with guile-pg, it will need patches.  I even tried
   applying debian's patches to see if that would help, but
   guile-pg uses gh.h.  Copying Thien-Thi, who appears to be the
   upstream: what is the right thing to do here?  Get it into a
   project on savannah in git hosting, no?

Sorry, i don't understand.  What does "it" refer to?

The right thing to do in any case is to identify the platform
specific parts, write tests to detect them, and code to accomodate
for them.

I started this with src/gi.h, but that is just the beginning.

thi




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 20:06       ` Thien-Thi Nguyen
@ 2010-04-08 22:13         ` Andy Wingo
  2010-04-09  7:08           ` Thien-Thi Nguyen
  0 siblings, 1 reply; 12+ messages in thread
From: Andy Wingo @ 2010-04-08 22:13 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: guile-user, guile-gtk, guile-devel

Hi!

On Thu 08 Apr 2010 22:06, Thien-Thi Nguyen <ttn@gnuvola.org> writes:

> () Andy Wingo <wingo@pobox.com>
> () Thu, 08 Apr 2010 20:53:17 +0200
>
>    No such luck with guile-pg, it will need patches.  I even tried
>    applying debian's patches to see if that would help, but
>    guile-pg uses gh.h.  Copying Thien-Thi, who appears to be the
>    upstream: what is the right thing to do here?  Get it into a
>    project on savannah in git hosting, no?
>
> Sorry, i don't understand.  What does "it" refer to?

Referring to guile-pg.

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 22:13         ` Andy Wingo
@ 2010-04-09  7:08           ` Thien-Thi Nguyen
  2010-04-09  8:40             ` Andy Wingo
  0 siblings, 1 reply; 12+ messages in thread
From: Thien-Thi Nguyen @ 2010-04-09  7:08 UTC (permalink / raw)
  To: guile-user, guile-gtk, guile-devel

() Andy Wingo <wingo@pobox.com>
() Fri, 09 Apr 2010 00:13:10 +0200

   > () Andy Wingo <wingo@pobox.com>
   > () Thu, 08 Apr 2010 20:53:17 +0200
   >
   >    what is the right thing to do here?  Get it into a
   >    project on savannah in git hosting, no?
   >
   > Sorry, i don't understand.  What does "it" refer to?

   Referring to guile-pg.

I'm not completely comfortable w/ that.  Besides
being a control freak, i'm also loosely connected.
(Patches by email are fine.)

thi




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-09  7:08           ` Thien-Thi Nguyen
@ 2010-04-09  8:40             ` Andy Wingo
  0 siblings, 0 replies; 12+ messages in thread
From: Andy Wingo @ 2010-04-09  8:40 UTC (permalink / raw)
  To: Thien-Thi Nguyen; +Cc: guile-user, guile-gtk, guile-devel

On Fri 09 Apr 2010 09:08, Thien-Thi Nguyen <ttn@gnuvola.org> writes:

> () Andy Wingo <wingo@pobox.com>
> () Fri, 09 Apr 2010 00:13:10 +0200
>
>    > () Andy Wingo <wingo@pobox.com>
>    > () Thu, 08 Apr 2010 20:53:17 +0200
>    >
>    >    what is the right thing to do here?  Get it into a
>    >    project on savannah in git hosting, no?
>    >
>    > Sorry, i don't understand.  What does "it" refer to?
>
>    Referring to guile-pg.
>
> I'm not completely comfortable w/ that.  Besides
> being a control freak, i'm also loosely connected.
> (Patches by email are fine.)

Can we have a git repo somewhere, then?

A
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 18:53     ` Andy Wingo
  2010-04-08 20:06       ` Thien-Thi Nguyen
@ 2010-04-10 14:23       ` David Pirotte
  2010-04-11 20:24         ` Andy Wingo
  2010-04-10 14:36       ` David Pirotte
  2010-04-13 14:09       ` guile-gnome-0 - guile-1.6-latest - corrupted double-linked David Pirotte
  3 siblings, 1 reply; 12+ messages in thread
From: David Pirotte @ 2010-04-10 14:23 UTC (permalink / raw)
  To: Andy Wingo; +Cc: Thien-Thi Nguyen, guile-devel

Le Thu, 08 Apr 2010 20:53:17 +0200,
Andy Wingo <wingo@pobox.com> a écrit :

> Hi David,
> 
> I'm happy to help, and glad to hear things are going OK. You probably
> have the largest guile-gnome-using apps out there... Also, one of these
> three lists is probably enough ;)

:-) left guile-devel only this time

> On Thu 08 Apr 2010 20:06, David Pirotte <david@altosw.be> writes:
> ...

> I just downloaded
> http://vychodil.inf.upol.cz/research/development/gtrees/download/gtrees-0.5-alpha.tar.bz2,
> and it seems to compile fine against 2.0. I did a (load-extension
> "./libgtrees" "define_gtrees_module") and that worked, and then
> (use-modules (gtrees-module)) and that worked too.

Yes. Just made things working both with guile-1.6 and guile-1.8 [on the same
machine I mean], by changing the module definition as this [if others would like to
do so...]:

;; --
(define-module (struct gtrees))

(let ((ef-ver (string->symbol (effective-version))))
  (case ef-ver
    ((#{1.6}#)
     (dynamic-call "init_gtrees_module"
		   (dynamic-link "/usr/local/lib/gtrees-0.3/libgtrees.so")))
    (else
     (dynamic-call "init_gtrees_module"
		   (dynamic-link "/usr/local/lib/gtrees-0.5/libgtrees.so")))
    ))
;; --

> Perhaps you will be able to skip 1.8 ;-) But it should work with 1.8 as well.

Well, as much as possible, due to the amount of work I have, I'll stick to debian
packages until I finish the application I am working on, then I'll try 2.0 and
guile-vm, I can't wait! but I have to :-(

> > 	guile-1.8 and guile-pg, a prehistoric version which will remain so until
>                       ^^ 

> No such luck with guile-pg, it will need patches. I even tried applying
> debian's patches to see if that would help, but guile-pg uses gh.h.
> Copying Thien-Thi, who appears to be the upstream: what is the right
> thing to do here? Get it into a project on savannah in git hosting, no?

If you remember, thanks to dsmith, on xchat, I could produce a guile-pg [debian]
package patched that works with guile-1.8 [the problem was a dependency one: here is
what I wrote to myself:

;;;
;;; Debian package [patching guile-pg-0.16]
;;;

A] Getting the source

	cd ~/alto/admin/guile-pg
	apt-get build-dep guile-pg
	apt-get source guile-pg
	cd guile-pg-0.16

B] Changing the dependency towards guile-1.8
   
 	cd guile-pg-0.16/debian
	
   perform the following change

<	Build-Depends: debhelper (>> 4.0), quilt, libpq-dev, guile-1.6-dev
>	Build-Depends: debhelper (>> 4.0), quilt, libpq-dev, guile-1.8-dev

	But I also wrote something about patching libpostgres.c and .h,
	[postgres-7.4: the only SW that's still is not a debian package [in my
	dependency 'little tower'] but a manual compilation [and they are @ 8.4 now,
	so quite late on this side too ...] can't find right now but if people are
	interested i'll make that info avalable too, let me know.

C] Then I changed the module definition [attached]

;; --

So I was wondering, in order to be as practicle as possible and save 'lost'
debugging time, is it possible to install both guile-gnom0 and guile-gnome2 on the
same machine ?

	I think I tried and didn't work, but I might be wrong.

That would fantastic because I could right away porting the development I am doing
and later on port the old apps.

Cheers,
David








^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-08 18:53     ` Andy Wingo
  2010-04-08 20:06       ` Thien-Thi Nguyen
  2010-04-10 14:23       ` David Pirotte
@ 2010-04-10 14:36       ` David Pirotte
  2010-04-13 14:09       ` guile-gnome-0 - guile-1.6-latest - corrupted double-linked David Pirotte
  3 siblings, 0 replies; 12+ messages in thread
From: David Pirotte @ 2010-04-10 14:36 UTC (permalink / raw)
  To: Andy Wingo; +Cc: Thien-Thi Nguyen, guile-devel

[-- Attachment #1: Type: text/plain, Size: 3425 bytes --]

forgot to attach postgres.scm ...


Le Thu, 08 Apr 2010 20:53:17 +0200,
Andy Wingo <wingo@pobox.com> a écrit :

> Hi David,
> 
> I'm happy to help, and glad to hear things are going OK. You probably
> have the largest guile-gnome-using apps out there... Also, one of these
> three lists is probably enough ;)

:-) left guile-devel only this time

> On Thu 08 Apr 2010 20:06, David Pirotte <david@altosw.be> writes:
> ...

> I just downloaded
> http://vychodil.inf.upol.cz/research/development/gtrees/download/gtrees-0.5-alpha.tar.bz2,
> and it seems to compile fine against 2.0. I did a (load-extension
> "./libgtrees" "define_gtrees_module") and that worked, and then
> (use-modules (gtrees-module)) and that worked too.

Yes. Just made things working both with guile-1.6 and guile-1.8 [on the same
machine I mean], by changing the module definition as this [if others would like to
do so...]:

;; --
(define-module (struct gtrees))

(let ((ef-ver (string->symbol (effective-version))))
  (case ef-ver
    ((#{1.6}#)
     (dynamic-call "init_gtrees_module"
		   (dynamic-link "/usr/local/lib/gtrees-0.3/libgtrees.so")))
    (else
     (dynamic-call "init_gtrees_module"
		   (dynamic-link "/usr/local/lib/gtrees-0.5/libgtrees.so")))
    ))
;; --

> Perhaps you will be able to skip 1.8 ;-) But it should work with 1.8 as well.

Well, as much as possible, due to the amount of work I have, I'll stick to debian
packages until I finish the application I am working on, then I'll try 2.0 and
guile-vm, I can't wait! but I have to :-(

> > 	guile-1.8 and guile-pg, a prehistoric version which will remain so until
>                       ^^ 

> No such luck with guile-pg, it will need patches. I even tried applying
> debian's patches to see if that would help, but guile-pg uses gh.h.
> Copying Thien-Thi, who appears to be the upstream: what is the right
> thing to do here? Get it into a project on savannah in git hosting, no?

If you remember, thanks to dsmith, on xchat, I could produce a guile-pg [debian]
package patched that works with guile-1.8 [the problem was a dependency one: here is
what I wrote to myself:

;;;
;;; Debian package [patching guile-pg-0.16]
;;;

A] Getting the source

	cd ~/alto/admin/guile-pg
	apt-get build-dep guile-pg
	apt-get source guile-pg
	cd guile-pg-0.16

B] Changing the dependency towards guile-1.8
   
 	cd guile-pg-0.16/debian
	
   perform the following change

<	Build-Depends: debhelper (>> 4.0), quilt, libpq-dev, guile-1.6-dev
>	Build-Depends: debhelper (>> 4.0), quilt, libpq-dev, guile-1.8-dev

	But I also wrote something about patching libpostgres.c and .h,
	[postgres-7.4: the only SW that's still is not a debian package [in my
	dependency 'little tower'] but a manual compilation [and they are @ 8.4 now,
	so quite late on this side too ...] can't find right now but if people are
	interested i'll make that info avalable too, let me know.

C] Then I changed the module definition [attached]

;; --

So I was wondering, in order to be as practicle as possible and save 'lost'
debugging time, is it possible to install both guile-gnom0 and guile-gnome2 on the
same machine ?

	I think I tried and didn't work, but I might be wrong.

That would fantastic because I could right away porting the development I am doing
and later on port the old apps.

Cheers,
David





[-- Attachment #2: postgres.scm --]
[-- Type: text/x-scheme, Size: 3919 bytes --]

;;; postgres.scm --- wrap PostgreSQL libpq

;;    Guile-pg - A Guile interface to PostgreSQL
;;    Copyright (C) 1999,2000,2002,2003 Free Software Foundation, Inc.
;;
;;    This program is free software; you can redistribute it and/or modify
;;    it under the terms of the GNU General Public License as published by
;;    the Free Software Foundation; either version 2 of the License, or
;;    (at your option) any later version.
;;
;;    This program is distributed in the hope that it will be useful,
;;    but WITHOUT ANY WARRANTY; without even the implied warranty of
;;    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;    GNU General Public License for more details.
;;
;;    You should have received a copy of the GNU General Public License
;;    along with this program; if not, write to the Free Software
;;    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

;;    Author: Ian Grant <Ian.Grant@cl.cam.ac.uk>

;; Load the C interface functions

(define-module (database postgres))

(let ((ef-ver (string->symbol (effective-version))))
  (case ef-ver
    ((#{1.6}#)
     (dynamic-call "init_postgres"
		   (dynamic-link "/usr/alto/admin/guile-pg/guile-1.6/libpostgres.so")))
    (else
     (dynamic-call "init_postgres"
		   (dynamic-link "/usr/alto/admin/guile-pg/guile-1.8/libpostgres.so")))
    ))

#!
(cond
 ;; maybe this is already done
 ((and (defined? 'pg-guile-pg-loaded) pg-guile-pg-loaded))
 ;; use app-module loader if there
 ((defined? 'make-app-module-loader)
  ((make-app-module-loader
    (lambda (name)
      (car (list
            `("~A/guile-pg/0.16" ,(assq-ref %guile-build-info 'libdir)))))
    (lambda (name)
      `("lib~A" ,name))
    (lambda (name)
      `("init_~A" ,name)))
   "postgres"))
 ;; primitive way
 (else (dynamic-call
        "init_postgres"
        (dynamic-link
         (car (list
               (format #f "~A/guile-pg/0.16/libpostgres.so"
                       (assq-ref %guile-build-info 'libdir))))))))
!#

(export pg-guile-pg-loaded)             ; ugh

(export pg-connectdb)
(export pg-connection?)
(export pg-setdb)
(export pg-reset)
(export pg-get-client-data)
(export pg-set-client-data!)
(export pg-exec)
(export pg-result?)
(export pg-error-message)
(export pg-get-db)
(export pg-get-user)
(export pg-get-pass)
(export pg-get-host)
(export pg-get-port)
(export pg-get-tty)
(export pg-get-options)
(export pg-get-connection)
(export pg-backend-pid)
(export pg-result-status)
(export pg-ntuples)
(export pg-nfields)
(export pg-cmdtuples)
(export pg-oid-status)
(export pg-oid-value)
(export pg-fname)
(export pg-fnumber)
(export pg-ftype)
(export pg-fsize)
(export pg-getvalue)
(export pg-getlength)
(export pg-getisnull)
(export pg-binary-tuples?)
(export pg-fmod)
(export pg-guile-pg-version)
(export pg-getline)
(export pg-putline)
(export pg-endcopy)
(export pg-trace)
(export pg-untrace)

(export pg-make-print-options)
(export pg-print)

(export pg-lo-creat)
(export pg-lo-open)
(export pg-lo-unlink)
(export pg-lo-get-connection)
(export pg-lo-get-oid)
(export pg-lo-tell)
(export pg-lo-seek)
(export pg-lo-read)
(export pg-lo-import)
(export pg-lo-export)

(define-public (pg-guile-pg-module-config-stamp) "Sun Apr 15 15:55:56 UTC 2007")
(define-public (pg-guile-pg-module-version) "0.16")

;; backward compatibility (not documented to encourage
;;                         usage of symbols in new code)
;;
;; WARNING: these will go away!

(define-public PGRES_EMPTY_QUERY    'PGRES_EMPTY_QUERY)
(define-public PGRES_COMMAND_OK     'PGRES_COMMAND_OK)
(define-public PGRES_TUPLES_OK      'PGRES_TUPLES_OK)
(define-public PGRES_COPY_OUT       'PGRES_COPY_OUT)
(define-public PGRES_COPY_IN        'PGRES_COPY_IN)
(define-public PGRES_BAD_RESPONSE   'PGRES_BAD_RESPONSE)
(define-public PGRES_NONFATAL_ERROR 'PGRES_NONFATAL_ERROR)
(define-public PGRES_FATAL_ERROR    'PGRES_FATAL_ERROR)

;;; postgres.scm ends here

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6.8-6.3 - random crash
  2010-04-10 14:23       ` David Pirotte
@ 2010-04-11 20:24         ` Andy Wingo
  0 siblings, 0 replies; 12+ messages in thread
From: Andy Wingo @ 2010-04-11 20:24 UTC (permalink / raw)
  To: David Pirotte; +Cc: Thien-Thi Nguyen, guile-devel

Hi,

On Sat 10 Apr 2010 16:23, David Pirotte <david@altosw.be> writes:

>      (dynamic-call "init_gtrees_module"
> 		   (dynamic-link "/usr/local/lib/gtrees-0.3/libgtrees.so")))

For what it's worth,

   (load-extension "/usr/local/lib/gtrees-0.3/libgtrees" "init_gtrees_module")

is more concise.

> If you remember, thanks to dsmith, on xchat, I could produce a guile-pg [debian]
> package patched that works with guile-1.8

Cool!

> So I was wondering, in order to be as practicle as possible and save 'lost'
> debugging time, is it possible to install both guile-gnom0 and guile-gnome2 on the
> same machine ?

Should be possible, yes. You should not load both of them into the same
Guile program, but I don't think they overlap at the file level.

Let me know if you find any problems.

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6-latest - corrupted double-linked
  2010-04-08 18:53     ` Andy Wingo
                         ` (2 preceding siblings ...)
  2010-04-10 14:36       ` David Pirotte
@ 2010-04-13 14:09       ` David Pirotte
  2010-04-14 18:55         ` Andy Wingo
  3 siblings, 1 reply; 12+ messages in thread
From: David Pirotte @ 2010-04-13 14:09 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guile-devel

[-- Attachment #1: Type: text/plain, Size: 637 bytes --]

Le Thu, 08 Apr 2010 20:53:17 +0200,
Andy Wingo <wingo@pobox.com> a écrit :

> Hi David,

> > But I have had another type of bug, which I beleive is not related to the one
> > you looked at, which rarely appears and occurred today, so here it is:
> >
> > 	*** glibc detected *** guile: corrupted double-linked list:
> > 	0x08a1ca60 ***
> 
> I couldn't tell from your backtraces what went on. Be sure to install
> the debug packages so that gdb can give symbols.

Done!

Is this any better? [I have no more 'no debugging symbols found' messages
in gdb, but still have '??' at the end of the trace]

Cheers,
David



[-- Attachment #2: corrupted-backtrace.txt --]
[-- Type: text/plain, Size: 8075 bytes --]


Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb7d2e6c0 (LWP 11316)]
0xffffe410 in __kernel_vsyscall ()
(gdb) bactrace
Undefined command: "bactrace".  Try "help".
(gdb) backtrace
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7d648e0 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7d67e15 in *__GI_abort () at abort.c:88
#3  0xb7d9b6c5 in __libc_message (do_abort=2, 
    fmt=0xb7e620e8 "*** glibc detected *** %s: %s: 0x%s ***\n")
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:173
#4  0xb7da5824 in malloc_printerr (action=2, str=0xb7e5eb6c "corrupted double-linked list", 
    ptr=0x83a27e8) at malloc.c:6239
#5  0xb7da5d82 in malloc_consolidate (av=0xb7e7e3c0) at malloc.c:5125
#6  0xb7da7d86 in _int_malloc (av=0xb7e7e3c0, bytes=904) at malloc.c:4360
#7  0xb7daa1ae in *__GI___libc_malloc (bytes=904) at malloc.c:3660
#8  0xb7396a09 in cairo_create () from /usr/lib/libcairo.so.2
#9  0xb74b42e2 in IA__gdk_cairo_create (drawable=0xb73f0120)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkcairo.c:52
#10 0xb6bfb492 in IA__gtk_cell_renderer_render (cell=0x8390f28, window=0x8779d40, 
    widget=0x8251150, background_area=0xbfd00c2c, cell_area=0xbfd00c3c, expose_area=0xbfd00c4c, 
    flags=<value optimized out>) at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkcellrenderer.c:569
#11 0xb6dbde5c in gtk_tree_view_column_cell_process_action (tree_column=<value optimized out>, 
    window=<value optimized out>, background_area=0xbfd00ea0, cell_area=0xbfd00e90, flags=0, 
    action=0, expose_area=0xbfd0139c, focus_rectangle=0x0, editable_widget=0x0, event=0x0, 
    path_string=0x0) at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeviewcolumn.c:2835
#12 0xb6dbec14 in _gtk_tree_view_column_cell_render (tree_column=0x82b0a38, window=0x8779d40, 
    background_area=0xbfd00ea0, cell_area=0xbfd00e90, expose_area=0xbfd0139c, flags=0)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeviewcolumn.c:3168
#13 0xb6db96f9 in gtk_tree_view_bin_expose (widget=<value optimized out>, 
    event=<value optimized out>) at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:4641
#14 0xb6dbaba1 in gtk_tree_view_expose (widget=0x8251150, event=0xbfd01390)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:4955
#15 0xb6cb0374 in _gtk_marshal_BOOLEAN__BOXED (closure=0x8137a10, return_value=0xbfd010f8, 
    n_param_values=2, param_values=0x838ce00, invocation_hint=0xbfd010e4, marshal_data=0xb6dbab00)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkmarshalers.c:84
#16 0xb7bff5e9 in g_type_class_meta_marshal (closure=0x8137a10, return_value=0xbfd010f8, 
    n_param_values=2, param_values=0x838ce00, invocation_hint=0xbfd010e4, marshal_data=0xc8)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gclosure.c:878
#17 0xb7c00f62 in IA__g_closure_invoke (closure=0x8137a10, return_value=0xbfd010f8, 
    n_param_values=2, param_values=0x838ce00, invocation_hint=0xbfd010e4)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gclosure.c:767
#18 0xb7c1509e in signal_emit_unlocked_R (node=<value optimized out>, 
    detail=<value optimized out>, instance=0x8251150, emission_return=0xbfd01240, 
    instance_and_params=0x838ce00)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:3285
#19 0xb7c165b8 in IA__g_signal_emit_valist (instance=0x8251150, signal_id=53, detail=0, 
    var_args=0xbfd012a4 "à\022пp\fS·Ì\022пäéò¶P\021%\b\020wP\b\220\036E\b\002")
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:2990
#20 0xb7c16ba6 in IA__g_signal_emit (instance=0x8251150, signal_id=53, detail=0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:3037
#21 0xb6dccafe in gtk_widget_event_internal (widget=<value optimized out>, event=0xbfd01390)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkwidget.c:4767
#22 0xb6caa090 in IA__gtk_main_do_event (event=0xbfd01390)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkmain.c:1571
#23 0xb74d838f in _gdk_window_process_updates_recurse (window=0x8779d40, expose_region=0x898f7a0)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkwindow.c:5172
#24 0xb74d833e in _gdk_window_process_updates_recurse (window=0x8779c98, expose_region=0x898f840)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkwindow.c:5145
#25 0xb74d833e in _gdk_window_process_updates_recurse (window=0x8504738, expose_region=0x898f800)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkwindow.c:5145
#26 0xb7500c24 in _gdk_windowing_window_process_updates_recurse (window=0x8504738, 
    region=0x898f800) at /tmp/buildd/gtk+2.0-2.18.9/gdk/x11/gdkwindow-x11.c:5571
#27 0xb74d4b53 in gdk_window_process_updates_internal (window=0x8504738)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkwindow.c:5331
#28 0xb74d9830 in IA__gdk_window_process_updates (window=0x8779de8, update_children=1)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdkwindow.c:5505
#29 0xb6da5530 in gtk_tree_view_adjustment_changed (adjustment=0x8116960, tree_view=0x8251150)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:10539
#30 0xb7c0e91c in IA__g_cclosure_marshal_VOID__VOID (closure=0x82502b8, return_value=0x0, 
    n_param_values=1, param_values=0x89bb1b0, invocation_hint=0xbfd017c4, marshal_data=0xb6da5360)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gmarshal.c:77
#31 0xb7c00f62 in IA__g_closure_invoke (closure=0x82502b8, return_value=0x0, n_param_values=1, 
    param_values=0x89bb1b0, invocation_hint=0xbfd017c4)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gclosure.c:767
#32 0xb7c153a8 in signal_emit_unlocked_R (node=<value optimized out>, 
    detail=<value optimized out>, instance=0x8116960, emission_return=0x0, 
    instance_and_params=0x89bb1b0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:3247
#33 0xb7c1672d in IA__g_signal_emit_valist (instance=0x8116960, signal_id=213, detail=0, 
    var_args=0xbfd01980 "zý¶äéò¶P\021%\bì\031пäRÚ¶`i\021\b")
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:2980
#34 0xb7c16ba6 in IA__g_signal_emit (instance=0x8116960, signal_id=213, detail=0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gsignal.c:3037
#35 0xb6bdb90a in IA__gtk_adjustment_value_changed (adjustment=0x8116960)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkadjustment.c:668
#36 0xb6da52e4 in gtk_tree_view_top_row_to_dy (tree_view=0x8251150)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:6479
#37 0xb6db7e45 in validate_visible_area (tree_view=0x8251150)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:6027
#38 0xb6db851d in do_presize_handler (tree_view=0x8251150)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:6300
#39 0xb6db85ce in presize_handler_callback (data=0x8251150)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtktreeview.c:6322
#40 0xb74b2ff8 in gdk_threads_dispatch (data=0x89709b0)
    at /tmp/buildd/gtk+2.0-2.18.9/gdk/gdk.c:506
#41 0xb7b77db1 in g_idle_dispatch (source=0x898f200, callback=0, user_data=0x89709b0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:4065
#42 0xb7b79b38 in IA__g_main_context_dispatch (context=0x811b720)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:1960
#43 0xb7b7d3d0 in g_main_context_iterate (context=0x811b720, block=<value optimized out>, 
    dispatch=1, self=0x8260898)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:2591
#44 0xb7b7d83f in IA__g_main_loop_run (loop=0x88e33b0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:2799
#45 0xb7b039bd in ?? () from /usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0
#46 0x088e33b0 in ?? ()
#47 0xb7f93468 in ?? () from /usr/lib/libguile.so.12
#48 0xbfd01cdc in ?? ()
#49 0xb7f1d757 in scm_internal_dynamic_wind (before=0x88e33b0, inner=0x2174, after=0xb5df62f0, 
    inner_data=0x80dc958, guard_data=0xbfd01d0c) at dynwind.c:168
Backtrace stopped: frame did not save the PC
(gdb)

[-- Attachment #3: corrupted-terminal-output.txt --]
[-- Type: text/plain, Size: 4231 bytes --]

*** glibc detected *** guile: corrupted double-linked list: 0x083a27e8 ***
======= Backtrace: =========
/lib/i686/cmov/libc.so.6[0xb7da5824]
/lib/i686/cmov/libc.so.6[0xb7da5d82]
/lib/i686/cmov/libc.so.6[0xb7da7d86]
/lib/i686/cmov/libc.so.6(__libc_malloc+0x5e)[0xb7daa1ae]
/usr/lib/libcairo.so.2(cairo_create+0x39)[0xb7396a09]
/usr/lib/libgdk-x11-2.0.so.0(gdk_cairo_create+0x92)[0xb74b42e2]
/usr/lib/libgtk-x11-2.0.so.0(gtk_cell_renderer_render+0xa2)[0xb6bfb492]
/usr/lib/libgtk-x11-2.0.so.0[0xb6dbde5c]
/usr/lib/libgtk-x11-2.0.so.0[0xb6dbec14]
/usr/lib/libgtk-x11-2.0.so.0[0xb6db96f9]
/usr/lib/libgtk-x11-2.0.so.0[0xb6dbaba1]
/usr/lib/libgtk-x11-2.0.so.0[0xb6cb0374]
/usr/lib/libgobject-2.0.so.0[0xb7bff5e9]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1b2)[0xb7c00f62]
/usr/lib/libgobject-2.0.so.0[0xb7c1509e]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x648)[0xb7c165b8]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x26)[0xb7c16ba6]
/usr/lib/libgtk-x11-2.0.so.0[0xb6dccafe]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main_do_event+0x500)[0xb6caa090]
/usr/lib/libgdk-x11-2.0.so.0[0xb74d838f]
/usr/lib/libgdk-x11-2.0.so.0[0xb74d833e]
/usr/lib/libgdk-x11-2.0.so.0[0xb74d833e]
/usr/lib/libgdk-x11-2.0.so.0[0xb7500c24]
/usr/lib/libgdk-x11-2.0.so.0[0xb74d4b53]
/usr/lib/libgdk-x11-2.0.so.0(gdk_window_process_updates+0x150)[0xb74d9830]
/usr/lib/libgtk-x11-2.0.so.0[0xb6da5530]
/usr/lib/libgobject-2.0.so.0(g_cclosure_marshal_VOID__VOID+0x7c)[0xb7c0e91c]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x1b2)[0xb7c00f62]
/usr/lib/libgobject-2.0.so.0[0xb7c153a8]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x7bd)[0xb7c1672d]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x26)[0xb7c16ba6]
/usr/lib/libgtk-x11-2.0.so.0(gtk_adjustment_value_changed+0x8a)[0xb6bdb90a]
/usr/lib/libgtk-x11-2.0.so.0[0xb6da52e4]
/usr/lib/libgtk-x11-2.0.so.0[0xb6db7e45]
/usr/lib/libgtk-x11-2.0.so.0[0xb6db851d]
/usr/lib/libgtk-x11-2.0.so.0[0xb6db85ce]
/usr/lib/libgdk-x11-2.0.so.0[0xb74b2ff8]
/lib/libglib-2.0.so.0[0xb7b77db1]
/lib/libglib-2.0.so.0(g_main_context_dispatch+0x1f8)[0xb7b79b38]
/lib/libglib-2.0.so.0[0xb7b7d3d0]
/lib/libglib-2.0.so.0(g_main_loop_run+0x1bf)[0xb7b7d83f]
/usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0[0xb7b039bd]
/usr/lib/libguile.so.12(scm_internal_dynamic_wind+0x9e)[0xb7f1d757]
/usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0(_wrap_g_main_loop_run+0x42)[0xb7b03922]
/usr/lib/libffi.so.4(ffi_call_SYSV+0x17)[0xb7a0f3f3]
/usr/lib/libffi.so.4(ffi_call+0x5e)[0xb7a0f23e]
/usr/lib/libgwrap-guile-runtime.so.0[0xb7a163a4]
/usr/lib/libguile.so.12[0xb7f5eb1b]
/usr/lib/libguile.so.12(scm_deval+0x2ef0)[0xb7f2d713]
/usr/lib/libguile.so.12(scm_deval+0x56b)[0xb7f2ad8e]
/usr/lib/libguile.so.12(scm_deval+0x10b2)[0xb7f2b8d5]
/usr/lib/libguile.so.12(scm_deval+0x12bf)[0xb7f2bae2]
/usr/lib/libguile.so.12(scm_deval+0x56b)[0xb7f2ad8e]
/usr/lib/libguile.so.12(scm_dapply+0x7aa)[0xb7f2a575]
/usr/lib/libguile.so.12(scm_apply+0x38)[0xb7f28e6a]
/usr/lib/libguile.so.12(scm_call_0+0x2d)[0xb7f2e2fe]
/usr/lib/libguile.so.12[0xb7f6b502]
/usr/lib/libguile.so.12(scm_fill_input+0x66)[0xb7f51fe1]
/usr/lib/libguile.so.12(scm_getc+0x64)[0xb7f52052]
/usr/lib/libguile.so.12(scm_flush_ws+0x28)[0xb7f59d4e]
/usr/lib/libguile.so.12(scm_read+0x79)[0xb7f5b0f5]
/usr/lib/libguile.so.12(scm_deval+0x2980)[0xb7f2d1a3]
/usr/lib/libguile.so.12(scm_deval+0x10b2)[0xb7f2b8d5]
======= Memory map: ========
08048000-08049000 r-xp 00000000 03:01 1085925    /usr/bin/guile-1.6
08049000-0804a000 rwxp 00000000 03:01 1085925    /usr/bin/guile-1.6
0804a000-08a35000 rwxp 0804a000 00:00 0          [heap]
b5a00000-b5a21000 rwxp b5a00000 00:00 0 
b5a21000-b5b00000 ---p b5a21000 00:00 0 
b5bcf000-b5beb000 r-xp 00000000 03:01 63206      /lib/libgcc_s.so.1
b5beb000-b5bec000 rwxp 0001c000 03:01 63206      /lib/libgcc_s.so.1
b5bec000-b5c2d000 rwxp b5c2d000 00:00 0 
b5c4e000-b6050000 rwxp b5c4e000 00:00 0 
b6050000-b6056000 r-xp 00000000 03:01 161228     /usr/local/lib/gtrees-0.3/libgtrees.so.0
b6056000-b6057000 rwxp 00005000 03:01 161228     /usr/local/lib/gtrees-0.3/libgtrees.so.0
b6057000-b6070000 r-xp 00000000 03:01 303479     /usr/lib/guile-gnome-0/libgw-guile-gnome-gnome-vfs.so.                           0.0.0
david@tabu:/usr/local/share/guile/alto 27 $ 

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6-latest - corrupted double-linked
  2010-04-13 14:09       ` guile-gnome-0 - guile-1.6-latest - corrupted double-linked David Pirotte
@ 2010-04-14 18:55         ` Andy Wingo
  2010-04-15 19:46           ` David Pirotte
  0 siblings, 1 reply; 12+ messages in thread
From: Andy Wingo @ 2010-04-14 18:55 UTC (permalink / raw)
  To: David Pirotte; +Cc: guile-devel

On Tue 13 Apr 2010 16:09, David Pirotte <david@altosw.be> writes:

> Le Thu, 08 Apr 2010 20:53:17 +0200,
> Andy Wingo <wingo@pobox.com> a écrit :
>
>> Hi David,
>
>> > But I have had another type of bug, which I beleive is not related to the one
>> > you looked at, which rarely appears and occurred today, so here it is:
>> >
>> > 	*** glibc detected *** guile: corrupted double-linked list:
>> > 	0x08a1ca60 ***
>> 
>> I couldn't tell from your backtraces what went on. Be sure to install
>> the debug packages so that gdb can give symbols.
>
> Done!
>
> Is this any better? [I have no more 'no debugging symbols found' messages
> in gdb, but still have '??' at the end of the trace]

Unfortunately I don't see the problem. All of the bt is in GTK+ code.
But surely it was a case that we freed something that was supposed to be
freed in some other way (the g_slice thing again).

Try valgrind perhaps?

Andy
-- 
http://wingolog.org/




^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: guile-gnome-0 - guile-1.6-latest - corrupted double-linked
  2010-04-14 18:55         ` Andy Wingo
@ 2010-04-15 19:46           ` David Pirotte
  0 siblings, 0 replies; 12+ messages in thread
From: David Pirotte @ 2010-04-15 19:46 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guile-devel

Hi Andy,

Le Wed, 14 Apr 2010 20:55:58 +0200,
Andy Wingo <wingo@pobox.com> a écrit :

> Unfortunately I don't see the problem. All of the bt is in GTK+ code.
> But surely it was a case that we freed something that was supposed to be
> freed in some other way (the g_slice thing again).

The backtrace error of the message you answered is the 'corrupted double-linked ...' 
which occurs 'rarely' and always gives a long output in the terminal + a backtrace ...

;; -- the 2 errors might be [or are for sure] related, but...:

The 'gslice error' occurs 'all the time'. This tells me that they are not 'the same'
and I still wish to try to debug. I have an idea:

	1]	here below is a 'full' backtrace [after installed guile-1.6-dev nostrip...]
		- may be it's better then the previous one? [for this error GSlice I mean]

	2]	if not, as I have a full source tree ready to compile as many times as I wish,
		using libglib 2.22.4-1 and 2.18.9-2:

		-]	I could temporarily change the source code, with your help, to open
			a log and write in it these info you need

		what do you think?

> Try valgrind perhaps?

I tried, but so far without much success: without help I am not sure I will achieve any 
useful result, and I have a feeling it would be quicker to temporarily change the source 
code, would it not be?

Thanks,
David

;; -- terminal output
***MEMORY-ERROR***: oc[6277]: GSlice: assertion failed: sinfo->n_allocated > 0

;; -- gdb backtrace ...
Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb7d246c0 (LWP 6277)]
0xffffe410 in __kernel_vsyscall ()
(gdb) backtrace
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7d5a8e0 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0xb7d5de15 in *__GI_abort () at abort.c:88
#3  0xb7b8c94f in mem_error (format=0xb7bb4f76 "assertion failed: %s")
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gslice.c:1197
#4  0xb7b8d216 in slab_allocator_free_chunk (chunk_size=<value optimized out>, mem=0x89a97c8)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gslice.c:1079
#5  0xb7b8d532 in magazine_cache_push_magazine (ix=<value optimized out>, 
    magazine_chunks=<value optimized out>, count=51)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gslice.c:614
#6  0xb7b8e57d in IA__g_slice_free_chain_with_offset (mem_size=12, mem_chain=0x83a3360, 
    next_offset=4) at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gslice.c:744
#7  0xb7b6dd01 in IA__g_list_free (list=0x83a3360)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/glist.c:65
#8  0xb74595f4 in g_unix_volume_monitor_finalize (object=0x8a14768)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gio/gunixvolumemonitor.c:83
#9  0xb7bf90ab in IA__g_object_unref (_object=0x8a14768)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gobject.c:2472
#10 0xb744c614 in g_union_volume_monitor_finalize (object=0x8a0e168)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gio/gunionvolumemonitor.c:73
#11 0xb7bf90ab in IA__g_object_unref (_object=0x8a0e168)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gobject.c:2472
#12 0xb6c55ae9 in gtk_file_system_dispose (object=0x89f36a0)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkfilesystem.c:184
#13 0xb7bf9000 in IA__g_object_unref (_object=0x89f36a0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gobject/gobject.c:2441
#14 0xb6c53433 in free_async_data (async_data=0x846dfb8)
    at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkfilesystem.c:770
#15 0xb6c5394d in query_info_callback (source_object=0x89f4000, result=0x8202cf0, 
    user_data=0x846dfb8) at /tmp/buildd/gtk+2.0-2.18.9/gtk/gtkfilesystem.c:881
#16 0xb743f059 in IA__g_simple_async_result_complete (simple=0x8202cf0)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gio/gsimpleasyncresult.c:588
#17 0xb743f36e in complete_in_idle_cb_for_thread (_data=0x82179a8)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/gio/gsimpleasyncresult.c:650
#18 0xb7b6ddb1 in g_idle_dispatch (source=0xb38004e8, callback=0, user_data=0x82179a8)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:4065
#19 0xb7b6fb38 in IA__g_main_context_dispatch (context=0x811b720)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:1960
#20 0xb7b733d0 in g_main_context_iterate (context=0x811b720, block=<value optimized out>, 
    dispatch=1, self=0x8260800)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:2591
#21 0xb7b7383f in IA__g_main_loop_run (loop=0x8919908)
    at /build/buildd-glib2.0_2.22.4-1-i386-jRfNZE/glib2.0-2.22.4/glib/gmain.c:2799
#22 0xb7af99bd in ?? () from /usr/lib/guile-gnome-0/libgw-guile-gnome-glib.so.0
#23 0x08919908 in ?? ()
#24 0xb7f89468 in ?? () from /usr/lib/libguile.so.12
#25 0xbfb2db2c in ?? ()
#26 0xb7f13757 in scm_internal_dynamic_wind (before=0x8919908, inner=0x2174, after=0xb5b456e8, 
    inner_data=0x80dc958, guard_data=0xbfb2db5c) at dynwind.c:168
Backtrace stopped: frame did not save the PC
(gdb) 




^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2010-04-15 19:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20100317170918.0a21c8be@rascar>
     [not found] ` <m3bpegw0y9.fsf@pobox.com>
2010-04-08 18:06   ` guile-gnome-0 - guile-1.6.8-6.3 - random crash David Pirotte
2010-04-08 18:53     ` Andy Wingo
2010-04-08 20:06       ` Thien-Thi Nguyen
2010-04-08 22:13         ` Andy Wingo
2010-04-09  7:08           ` Thien-Thi Nguyen
2010-04-09  8:40             ` Andy Wingo
2010-04-10 14:23       ` David Pirotte
2010-04-11 20:24         ` Andy Wingo
2010-04-10 14:36       ` David Pirotte
2010-04-13 14:09       ` guile-gnome-0 - guile-1.6-latest - corrupted double-linked David Pirotte
2010-04-14 18:55         ` Andy Wingo
2010-04-15 19:46           ` David Pirotte

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).