unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
* Guile not running properly on GNU/Hurd
@ 2013-02-02 18:51 Gabriel Schnoering
  2013-02-02 22:24 ` Richard Braun
  2013-02-04 18:26 ` Gabriel Schnoering
  0 siblings, 2 replies; 9+ messages in thread
From: Gabriel Schnoering @ 2013-02-02 18:51 UTC (permalink / raw)
  To: guile-user; +Cc: bug-hurd

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

Hi, everyone.

I see that some people are excited by guile and the hurd.
So I'm coming here to break a bit the good mood, sorry for that.

I'm still stuck with the following issue I guess bug#11776: Guile with Hurd.

Running the following command in the shell

	$ guile -c '(display (+ 1 2) (newline))'
	3
	$

works, however in guile

	scheme@(guile-user)> (display (+ 1 2))
	Illegal instruction

Whatever scheme I try from REPL gives "Illegal instruction".

	scheme@(guile-user)> ,help

works but

	scheme@(guile-user)> ,describe +

quits with Illegal instruction

For example, just pressing "TAB" also quits with:

:~$ guile
GNU Guile 2.0.5-deb+1-3
Copyright (C) 1995-2012 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> Illegal instruction
:~$

I can't run guile in gdb as there are some error with the garbage
collector.

:~$ gdb guile
GNU gdb (GDB) 7.4-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/guile...(no debugging symbols found)...done.
(gdb) r
Starting program: /usr/bin/guile
[New Thread 545.5]

Program received signal SIGSEGV, Segmentation fault.
0x013ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
(gdb) bt
#0  0x013ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
#1  0x013ac26c in GC_find_limit () from /usr/lib/libgc.so.1
#2  0x013ac2f3 in GC_get_main_stack_base () from /usr/lib/libgc.so.1
#3  0x013ab75d in GC_init_inner () from /usr/lib/libgc.so.1
#4  0x013ab794 in GC_init () from /usr/lib/libgc.so.1
#5  0x01090d20 in ?? () from /usr/lib/libguile-2.0.so.22
#6  0x010a248d in ?? () from /usr/lib/libguile-2.0.so.22
#7  0x010fff50 in ?? () from /usr/lib/libguile-2.0.so.22
#8  0x010fff8e in ?? () from /usr/lib/libguile-2.0.so.22
#9  0x013ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#10 0x011001df in scm_with_guile () from /usr/lib/libguile-2.0.so.22
#11 0x010a2435 in scm_boot_guile () from /usr/lib/libguile-2.0.so.22
#12 0x080487e5 in ?? ()
#13 0x0124167b in __libc_start_main () from /lib/i386-gnu/libc.so.0.3
#14 0x0804880d in ?? ()
(gdb)


I am using the debian hurd image with qemu.

I tried with guile 2.0.7 (can't build the master as it request automake
1.12 which is not available yet) and some of make checks tests failed
(colored in red !)


bubu@debian:~/devel/guile-2.0.7$ ./meta/guile
GNU Guile 2.0.7
Copyright (C) 1995-2012 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> (display "héhéh")
Illegal instruction
bubu@debian:~/devel/guile-2.0.7$

I attached the result of make checks for guile-2.0.7

Let me know if you have some hints on how to obtain more infos or small
tests to perform to solve this issue.

Regards,

Gabriel Schnoering.

[-- Attachment #2: guilehurdcheckfail --]
[-- Type: text/plain, Size: 7495 bytes --]

bubu@debian:~/devel/guile-2.0.7$ make check
  GEN      public-submodule-commit
make  check-recursive
make[1]: Entering directory `/home/bubu/devel/guile-2.0.7'
Making check in lib
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make  check-recursive
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make[4]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make[4]: Nothing to be done for `check-am'.
make[4]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
Making check in meta
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/meta'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/meta'
Making check in libguile
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/libguile'
make  check-am
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/libguile'
make[3]: Nothing to be done for `check-am'.
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/libguile'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/libguile'
Making check in module
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/module'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/module'
Making check in guile-readline
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make  check-am
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make[3]: Nothing to be done for `check-am'.
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/guile-readline'
Making check in examples
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/examples'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/examples'
Making check in emacs
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/emacs'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/emacs'
Making check in test-suite
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite'
Making check in standalone
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  check-am
make[4]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  test-num2integral test-round test-list test-unwind test-conversion test-loose-ends test-scm-c-read test-scm-take-locale-symbol test-scm-take-u8vector test-scm-to-latin1-string test-scm-values test-with-guile-module test-scm-with-guile test-scm-spawn-thread test-pthread-create test-pthread-create-secondary test-system-cmds test-bad-identifiers test-require-extension test-guile-snarf test-import-order test-command-line-encoding test-command-line-encoding2 test-asmobs test-ffi test-fast-slot-ref test-mb-regexp test-use-srfi test-extensions
make[5]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
  CC       test_num2integral-test-num2integral.o
  CCLD     test-num2integral
  CC       test_round-test-round.o
  CCLD     test-round
  CC       test_list-test-list.o
  CCLD     test-list
  CC       test_unwind-test-unwind.o
  CCLD     test-unwind
  CC       test_conversion-test-conversion.o
  CCLD     test-conversion
  CC       test_loose_ends-test-loose-ends.o
  CCLD     test-loose-ends
  CC       test_scm_c_read-test-scm-c-read.o
  CCLD     test-scm-c-read
  CC       test_scm_take_locale_symbol-test-scm-take-locale-symbol.o
  CCLD     test-scm-take-locale-symbol
  CC       test_scm_take_u8vector-test-scm-take-u8vector.o
  CCLD     test-scm-take-u8vector
  CC       test_scm_to_latin1_string-test-scm-to-latin1-string.o
  CCLD     test-scm-to-latin1-string
  CC       test_scm_values-test-scm-values.o
  CCLD     test-scm-values
  CC       test_with_guile_module-test-with-guile-module.o
  CCLD     test-with-guile-module
  CC       test_scm_with_guile-test-scm-with-guile.o
  CCLD     test-scm-with-guile
  CC       test_scm_spawn_thread-test-scm-spawn-thread.o
  CCLD     test-scm-spawn-thread
  CC       test_pthread_create-test-pthread-create.o
  CCLD     test-pthread-create
  CC       test_pthread_create_secondary-test-pthread-create-secondary.o
  CCLD     test-pthread-create-secondary
make[5]: Nothing to be done for `test-system-cmds'.
make[5]: Nothing to be done for `test-bad-identifiers'.
make[5]: Nothing to be done for `test-require-extension'.
make[5]: Nothing to be done for `test-guile-snarf'.
make[5]: Nothing to be done for `test-import-order'.
make[5]: Nothing to be done for `test-command-line-encoding'.
make[5]: Nothing to be done for `test-command-line-encoding2'.
make[5]: Nothing to be done for `test-asmobs'.
make[5]: Nothing to be done for `test-ffi'.
make[5]: `test-fast-slot-ref' is up to date.
make[5]: Nothing to be done for `test-mb-regexp'.
make[5]: `test-use-srfi' is up to date.
make[5]: Nothing to be done for `test-extensions'.
make[5]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  check-TESTS
make[5]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
PASS: test-system-cmds
PASS: test-bad-identifiers
PASS: test-require-extension
PASS: test-guile-snarf
PASS: test-import-order
PASS: test-command-line-encoding
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US)
PASS: test-command-line-encoding2
PASS: test-num2integral
PASS: test-round
PASS: test-asmobs
PASS: test-ffi
PASS: test-list
PASS: test-unwind
PASS: test-conversion
PASS: test-loose-ends
/bin/bash: line 5:  5196 Illegal instruction     srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-fast-slot-ref
PASS: test-mb-regexp
PASS: test-use-srfi
PASS: test-scm-c-read
PASS: test-scm-take-locale-symbol
PASS: test-scm-take-u8vector
PASS: test-scm-to-latin1-string
PASS: test-scm-values
PASS: test-extensions
/bin/bash: line 5:  5531 Segmentation fault      srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-with-guile-module
PASS: test-scm-with-guile
/bin/bash: line 5:  5593 Segmentation fault      srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-scm-spawn-thread
/bin/bash: line 5:  5625 Segmentation fault      srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-pthread-create
SKIP: test-pthread-create-secondary
==================================
4 of 28 tests failed
(1 test was not run)
Please report to bug-guile@gnu.org
==================================
make[5]: *** [check-TESTS] Error 1
make[5]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[4]: *** [check-am] Error 2
make[4]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[3]: *** [check] Error 2
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[2]: *** [check-recursive] Error 1
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/bubu/devel/guile-2.0.7'
make: *** [check] Error 2
bubu@debian:~/devel/guile-2.0.7$

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

* Re: Guile not running properly on GNU/Hurd
  2013-02-02 18:51 Guile not running properly on GNU/Hurd Gabriel Schnoering
@ 2013-02-02 22:24 ` Richard Braun
  2013-02-04 22:09   ` Ludovic Courtès
  2013-02-09  9:48   ` Neal H. Walfield
  2013-02-04 18:26 ` Gabriel Schnoering
  1 sibling, 2 replies; 9+ messages in thread
From: Richard Braun @ 2013-02-02 22:24 UTC (permalink / raw)
  To: Gabriel Schnoering; +Cc: guile-user, bug-hurd

On Sat, Feb 02, 2013 at 07:51:38PM +0100, Gabriel Schnoering wrote:
> I can't run guile in gdb as there are some error with the garbage
> collector.

These are probably not errors. Many language interpretors rely on
receiving SIGSEGV to implement memory. Use the gdb "handle" command to
make it automatically pass on SIGSEGV signals so that you only catch the
SIGILL you're interested in.

-- 
Richard Braun



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

* Re: Guile not running properly on GNU/Hurd
  2013-02-02 18:51 Guile not running properly on GNU/Hurd Gabriel Schnoering
  2013-02-02 22:24 ` Richard Braun
@ 2013-02-04 18:26 ` Gabriel Schnoering
  2013-02-08 18:08   ` Gabriel Schnoering
  1 sibling, 1 reply; 9+ messages in thread
From: Gabriel Schnoering @ 2013-02-04 18:26 UTC (permalink / raw)
  To: guile-user; +Cc: bug-hurd, rbraun

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

Hi,

As was discussed on irc, I investigated a bit deeper the issue.

First I compiled libgc-7.2d

./configure
make
make check

All tests passed ! (which was not the case with guile-2.0.7)

But make install failed for --prefix in the user ~/devel/libgc directory
(see hurdlibgcinstall)


Anyway I ran meta/gdb-uninstalled-guile from the 2.0.7 build dir and
went a bit further with gdb, the log is attached as 'hurdguilereplfail3'.

Always with meta/gdb-uninstalled-guile, there seem to be no error to run
some code by direcly evaluating the expression.

(gdb) r -c '(display "hello!")'
Starting program: /home/bubu/devel/guile-2.0.7/libguile/.libs/lt-guile
-c '(display "hello!")'
[New Thread 8566.14]

Program received signal SIGSEGV, Segmentation fault.
0x011ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
(gdb) continue
Continuing.
hello![Inferior 1 (bogus thread id 0) exited normally]
(gdb)

Afterwards I installed libc0.3-dbg and ran it another time, result is
attached in 'hurdguilereplfail4'.

For the moment I didn't build guile-2.0.7 with the new libgc (7.2d) version.
I will give it more trial tomorrow and let you know.

Regards,

Gabriel Schnoering

On 02/02/2013 19:51, Gabriel Schnoering wrote:
> Hi, everyone.
> 
> I see that some people are excited by guile and the hurd.
> So I'm coming here to break a bit the good mood, sorry for that.
> 
> I'm still stuck with the following issue I guess bug#11776: Guile with Hurd.
> 
> Running the following command in the shell
> 
> 	$ guile -c '(display (+ 1 2) (newline))'
> 	3
> 	$
> 
> works, however in guile
> 
> 	scheme@(guile-user)> (display (+ 1 2))
> 	Illegal instruction
> 
> Whatever scheme I try from REPL gives "Illegal instruction".
> 
> 	scheme@(guile-user)> ,help
> 
> works but
> 
> 	scheme@(guile-user)> ,describe +
> 
> quits with Illegal instruction
> 
> For example, just pressing "TAB" also quits with:
> 
> :~$ guile
> GNU Guile 2.0.5-deb+1-3
> Copyright (C) 1995-2012 Free Software Foundation, Inc.
> 
> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
> This program is free software, and you are welcome to redistribute it
> under certain conditions; type `,show c' for details.
> 
> Enter `,help' for help.
> scheme@(guile-user)> Illegal instruction
> :~$
> 
> I can't run guile in gdb as there are some error with the garbage
> collector.
> 
> :~$ gdb guile
> GNU gdb (GDB) 7.4-debian
> Copyright (C) 2012 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "i486-gnu".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>...
> Reading symbols from /usr/bin/guile...(no debugging symbols found)...done.
> (gdb) r
> Starting program: /usr/bin/guile
> [New Thread 545.5]
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x013ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
> (gdb) bt
> #0  0x013ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
> #1  0x013ac26c in GC_find_limit () from /usr/lib/libgc.so.1
> #2  0x013ac2f3 in GC_get_main_stack_base () from /usr/lib/libgc.so.1
> #3  0x013ab75d in GC_init_inner () from /usr/lib/libgc.so.1
> #4  0x013ab794 in GC_init () from /usr/lib/libgc.so.1
> #5  0x01090d20 in ?? () from /usr/lib/libguile-2.0.so.22
> #6  0x010a248d in ?? () from /usr/lib/libguile-2.0.so.22
> #7  0x010fff50 in ?? () from /usr/lib/libguile-2.0.so.22
> #8  0x010fff8e in ?? () from /usr/lib/libguile-2.0.so.22
> #9  0x013ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
> #10 0x011001df in scm_with_guile () from /usr/lib/libguile-2.0.so.22
> #11 0x010a2435 in scm_boot_guile () from /usr/lib/libguile-2.0.so.22
> #12 0x080487e5 in ?? ()
> #13 0x0124167b in __libc_start_main () from /lib/i386-gnu/libc.so.0.3
> #14 0x0804880d in ?? ()
> (gdb)
> 
> 
> I am using the debian hurd image with qemu.
> 
> I tried with guile 2.0.7 (can't build the master as it request automake
> 1.12 which is not available yet) and some of make checks tests failed
> (colored in red !)
> 
> 
> bubu@debian:~/devel/guile-2.0.7$ ./meta/guile
> GNU Guile 2.0.7
> Copyright (C) 1995-2012 Free Software Foundation, Inc.
> 
> Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
> This program is free software, and you are welcome to redistribute it
> under certain conditions; type `,show c' for details.
> 
> Enter `,help' for help.
> scheme@(guile-user)> (display "héhéh")
> Illegal instruction
> bubu@debian:~/devel/guile-2.0.7$
> 
> I attached the result of make checks for guile-2.0.7
> 
> Let me know if you have some hints on how to obtain more infos or small
> tests to perform to solve this issue.
> 
> Regards,
> 
> Gabriel Schnoering.
> 


[-- Attachment #2: hurdguilereplfail3 --]
[-- Type: text/plain, Size: 18780 bytes --]

bubu@debian:~/devel/guile-2.0.7$ ./meta/gdb-uninstalled-guile 
GNU gdb (GDB) 7.4-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/bubu/devel/guile-2.0.7/libguile/.libs/lt-guile...done.
(gdb) r
Starting program: /home/bubu/devel/guile-2.0.7/libguile/.libs/lt-guile 
[New Thread 8596.5]

Program received signal SIGSEGV, Segmentation fault.
0x011ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
(gdb) bt
#0  0x011ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
#1  0x011ac26c in GC_find_limit () from /usr/lib/libgc.so.1
#2  0x011ac2f3 in GC_get_main_stack_base () from /usr/lib/libgc.so.1
#3  0x011ab75d in GC_init_inner () from /usr/lib/libgc.so.1
#4  0x011ab794 in GC_init () from /usr/lib/libgc.so.1
#5  0x0108b1fc in scm_storage_prehistory () at gc.c:639
#6  0x0109c81d in scm_i_init_guile (base=base@entry=0x17ffbec) at init.c:386
#7  0x010fa8f0 in scm_i_init_thread_for_guile (base=0x17ffbec, parent=<optimized out>) at threads.c:833
#8  scm_i_init_thread_for_guile (base=0x17ffbec, parent=0x0) at threads.c:812
#9  0x010fa92e in with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:899
#10 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#11 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#12 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#13 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#14 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.
GNU Guile 2.0.7
Copyright (C) 1995-2012 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> (display "hello!")
[New Thread 8596.6]

Program received signal SIGUSR1, User defined signal 1.
0x013ed7cc in ?? () from /lib/i386-gnu/libc.so.0.3
(gdb) bt
#0  0x013ed7cc in ?? () from /lib/i386-gnu/libc.so.0.3
#1  0x013edfc9 in mach_msg () from /lib/i386-gnu/libc.so.0.3
#2  0x015b1c4f in msg_sig_post () from /lib/i386-gnu/libhurduser.so.0.3
#3  0x01408e3c in _hurd_raise_signal () from /lib/i386-gnu/libc.so.0.3
#4  0x013cc55a in pthread_kill () from /lib/i386-gnu/libpthread.so.0.3
#5  0x011b07ac in GC_suspend_all () from /usr/lib/libgc.so.1
#6  0x011b0830 in GC_stop_world () from /usr/lib/libgc.so.1
#7  0x011a0780 in GC_stopped_mark () from /usr/lib/libgc.so.1
#8  0x011a0eda in GC_try_to_collect_inner () from /usr/lib/libgc.so.1
#9  0x011a1a1c in GC_collect_or_expand () from /usr/lib/libgc.so.1
#10 0x011a1c2f in GC_allocobj () from /usr/lib/libgc.so.1
#11 0x011a651f in GC_generic_malloc_inner () from /usr/lib/libgc.so.1
#12 0x011a3e6b in GC_general_register_disappearing_link () from /usr/lib/libgc.so.1
#13 0x01117e58 in scm_weak_car_pair (car=0x84f9d40, cdr=0x904) at weaks.c:67
#14 0x01096d35 in scm_hash_fn_create_handle_x (table=0x809efe0, obj=obj@entry=0x84f9d40, init=init@entry=0x904, 
    hash_fn=hash_fn@entry=0x10f8710 <symbol_lookup_hash_fn>, assoc_fn=assoc_fn@entry=0x10f8e60 <symbol_lookup_assoc_fn>, closure=closure@entry=0x0) at hashtab.c:723
#15 0x010f885c in intern_symbol (symbol=0x84f9d40) at symbols.c:195
#16 scm_i_str2symbol (str=<optimized out>) at symbols.c:218
#17 0x010f90a5 in scm_from_latin1_symboln (sym=0x3dc723 "format-string-argument-count\244\003\f\t\002g", len=28) at symbols.c:479
#18 0x01108111 in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x3dc73f, nargs=0) at vm-i-loader.c:55
#19 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dba40, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#20 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dba60) at vm.c:1052
#21 0x010a3360 in scm_primitive_load_path (args=0x84e69e8) at load.c:942
#22 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#23 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8469180, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#24 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84691a0) at vm.c:1052
#25 0x010a3360 in scm_primitive_load_path (args=0x8473f70) at load.c:942
#26 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#27 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8447aa0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#28 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x8447ac0) at vm.c:1052
#29 0x010a3360 in scm_primitive_load_path (args=0x844b310) at load.c:942
#30 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#31 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#32 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#33 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#34 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#35 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#36 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#37 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#38 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#39 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#40 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#41 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#42 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#43 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#44 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
---Type <return> to continue, or q <return> to quit---
#45 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
#46 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#47 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#48 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
#49 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#50 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#51 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#52 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#53 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.

Program received signal SIGUSR2, User defined signal 2.
0x013ed7cc in ?? () from /lib/i386-gnu/libc.so.0.3
(gdb) bt
#0  0x013ed7cc in ?? () from /lib/i386-gnu/libc.so.0.3
#1  0x013edfc9 in mach_msg () from /lib/i386-gnu/libc.so.0.3
#2  0x015b1c4f in msg_sig_post () from /lib/i386-gnu/libhurduser.so.0.3
#3  0x01408e3c in _hurd_raise_signal () from /lib/i386-gnu/libc.so.0.3
#4  0x013cc55a in pthread_kill () from /lib/i386-gnu/libpthread.so.0.3
#5  0x011b09d2 in GC_start_world () from /usr/lib/libgc.so.1
#6  0x011a087b in GC_stopped_mark () from /usr/lib/libgc.so.1
#7  0x011a0eda in GC_try_to_collect_inner () from /usr/lib/libgc.so.1
#8  0x011a1a1c in GC_collect_or_expand () from /usr/lib/libgc.so.1
#9  0x011a1c2f in GC_allocobj () from /usr/lib/libgc.so.1
#10 0x011a651f in GC_generic_malloc_inner () from /usr/lib/libgc.so.1
#11 0x011a3e6b in GC_general_register_disappearing_link () from /usr/lib/libgc.so.1
#12 0x01117e58 in scm_weak_car_pair (car=0x84f9d40, cdr=0x904) at weaks.c:67
#13 0x01096d35 in scm_hash_fn_create_handle_x (table=0x809efe0, obj=obj@entry=0x84f9d40, init=init@entry=0x904, 
    hash_fn=hash_fn@entry=0x10f8710 <symbol_lookup_hash_fn>, assoc_fn=assoc_fn@entry=0x10f8e60 <symbol_lookup_assoc_fn>, closure=closure@entry=0x0) at hashtab.c:723
#14 0x010f885c in intern_symbol (symbol=0x84f9d40) at symbols.c:195
#15 scm_i_str2symbol (str=<optimized out>) at symbols.c:218
#16 0x010f90a5 in scm_from_latin1_symboln (sym=0x3dc723 "format-string-argument-count\244\003\f\t\002g", len=28) at symbols.c:479
#17 0x01108111 in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x3dc73f, nargs=0) at vm-i-loader.c:55
#18 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dba40, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#19 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dba60) at vm.c:1052
#20 0x010a3360 in scm_primitive_load_path (args=0x84e69e8) at load.c:942
#21 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#22 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8469180, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#23 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84691a0) at vm.c:1052
#24 0x010a3360 in scm_primitive_load_path (args=0x8473f70) at load.c:942
#25 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#26 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8447aa0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#27 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x8447ac0) at vm.c:1052
#28 0x010a3360 in scm_primitive_load_path (args=0x844b310) at load.c:942
#29 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#30 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#31 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#32 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#33 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#34 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#35 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#36 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#37 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#38 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#39 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#40 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#41 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#42 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#43 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
#44 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
---Type <return> to continue, or q <return> to quit---
#45 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#46 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#47 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
#48 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#49 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#50 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#51 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#52 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.

Program received signal SIGILL, Illegal instruction.
0x01108288 in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x3dd067, nargs=0) at vm-i-loader.c:78
78        NEXT;
(gdb) bt 
#0  0x01108288 in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x3dd067, nargs=0) at vm-i-loader.c:78
#1  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dba40, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#2  0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dba60) at vm.c:1052
#3  0x010a3360 in scm_primitive_load_path (args=0x84e69e8) at load.c:942
#4  0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#5  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8469180, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#6  0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84691a0) at vm.c:1052
#7  0x010a3360 in scm_primitive_load_path (args=0x8473f70) at load.c:942
#8  0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#9  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8447aa0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#10 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x8447ac0) at vm.c:1052
#11 0x010a3360 in scm_primitive_load_path (args=0x844b310) at load.c:942
#12 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#13 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#14 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#15 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#16 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#17 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#18 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#19 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#20 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#21 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#22 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#23 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#24 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#25 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#26 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
#27 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
#28 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#29 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#30 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
#31 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#32 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#33 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#34 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#35 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.

Program terminated with signal SIGILL, Illegal instruction.
The program no longer exists.
(gdb) 


[-- Attachment #3: hurdguilereplfail4 --]
[-- Type: text/plain, Size: 17303 bytes --]

bubu@debian:~/devel/guile-2.0.7$ ./meta/gdb-uninstalled-guile 
GNU gdb (GDB) 7.4-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/bubu/devel/guile-2.0.7/libguile/.libs/lt-guile...done.
(gdb) r
Starting program: /home/bubu/devel/guile-2.0.7/libguile/.libs/lt-guile 
[New Thread 8757.5]

Program received signal SIGSEGV, Segmentation fault.
0x011ac1ad in GC_find_limit_with_bound () from /usr/lib/libgc.so.1
(gdb) continue
Continuing.
GNU Guile 2.0.7
Copyright (C) 1995-2012 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> grrrrrrrr
[New Thread 8757.6]

Program received signal SIGUSR1, User defined signal 1.
0x013ed7cc in mach_msg_trap () at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
2       /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S: No such file or directory.
(gdb) bt
#0  0x013ed7cc in mach_msg_trap () at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
#1  0x013edfc9 in __mach_msg (msg=0x17fe040, option=3, send_size=48, rcv_size=32, rcv_name=133, timeout=0, notify=0) at msg.c:110
#2  0x015b1c4f in __msg_sig_post (process=140, signal=0, sigcode=0, refport=1) at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/hurd/RPC_msg_sig_post.c:143
#3  0x01408e3c in _hurd_raise_signal (ss=0x26008, signo=30, detail=0x17fe0b8) at hurd-raise.c:50
#4  0x013cc55a in pthread_kill (thread=3, sig=30) at ../libpthread/sysdeps/hurd/pt-kill.c:49
#5  0x011b07ac in GC_suspend_all () from /usr/lib/libgc.so.1
#6  0x011b0830 in GC_stop_world () from /usr/lib/libgc.so.1
#7  0x011a0780 in GC_stopped_mark () from /usr/lib/libgc.so.1
#8  0x011a0eda in GC_try_to_collect_inner () from /usr/lib/libgc.so.1
#9  0x011a1a1c in GC_collect_or_expand () from /usr/lib/libgc.so.1
#10 0x011a1c2f in GC_allocobj () from /usr/lib/libgc.so.1
#11 0x011a651f in GC_generic_malloc_inner () from /usr/lib/libgc.so.1
#12 0x011a731b in GC_generic_malloc_many () from /usr/lib/libgc.so.1
#13 0x011af005 in GC_malloc () from /usr/lib/libgc.so.1
#14 0x01106eaf in scm_cell (cdr=<optimized out>, car=<optimized out>) at ../libguile/gc.h:231
#15 vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d268c, nargs=0) at vm-i-system.c:203
#16 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dfa60, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#17 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dfa80) at vm.c:1052
#18 0x010a3360 in scm_primitive_load_path (args=0x84eaa08) at load.c:942
#19 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#20 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x846c1b0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#21 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x846c1d0) at vm.c:1052
#22 0x010a3360 in scm_primitive_load_path (args=0x8476f90) at load.c:942
#23 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#24 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x844aad0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#25 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x844aaf0) at vm.c:1052
#26 0x010a3360 in scm_primitive_load_path (args=0x844e330) at load.c:942
#27 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#28 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#29 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#30 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#31 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#32 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#33 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#34 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#35 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#36 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#37 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#38 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#39 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#40 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#41 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
#42 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
#43 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#44 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#45 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
---Type <return> to continue, or q <return> to quit---
#46 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#47 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#48 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#49 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#50 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue
Continuing.

Program received signal SIGUSR2, User defined signal 2.
0x013ed7cc in mach_msg_trap () at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
2       in /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S
(gdb) bt
#0  0x013ed7cc in mach_msg_trap () at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/mach/mach_msg_trap.S:2
#1  0x013edfc9 in __mach_msg (msg=0x17fe090, option=3, send_size=48, rcv_size=32, rcv_name=133, timeout=0, notify=0) at msg.c:110
#2  0x015b1c4f in __msg_sig_post (process=140, signal=0, sigcode=0, refport=1) at /usr/src/eglibc-2.13/build-tree/hurd-i386-libc/hurd/RPC_msg_sig_post.c:143
#3  0x01408e3c in _hurd_raise_signal (ss=0x26008, signo=31, detail=0x17fe108) at hurd-raise.c:50
#4  0x013cc55a in pthread_kill (thread=3, sig=31) at ../libpthread/sysdeps/hurd/pt-kill.c:49
#5  0x011b09d2 in GC_start_world () from /usr/lib/libgc.so.1
#6  0x011a087b in GC_stopped_mark () from /usr/lib/libgc.so.1
#7  0x011a0eda in GC_try_to_collect_inner () from /usr/lib/libgc.so.1
#8  0x011a1a1c in GC_collect_or_expand () from /usr/lib/libgc.so.1
#9  0x011a1c2f in GC_allocobj () from /usr/lib/libgc.so.1
#10 0x011a651f in GC_generic_malloc_inner () from /usr/lib/libgc.so.1
#11 0x011a731b in GC_generic_malloc_many () from /usr/lib/libgc.so.1
#12 0x011af005 in GC_malloc () from /usr/lib/libgc.so.1
#13 0x01106eaf in scm_cell (cdr=<optimized out>, car=<optimized out>) at ../libguile/gc.h:231
#14 vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d268c, nargs=0) at vm-i-system.c:203
#15 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dfa60, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#16 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dfa80) at vm.c:1052
#17 0x010a3360 in scm_primitive_load_path (args=0x84eaa08) at load.c:942
#18 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#19 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x846c1b0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#20 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x846c1d0) at vm.c:1052
#21 0x010a3360 in scm_primitive_load_path (args=0x8476f90) at load.c:942
#22 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#23 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x844aad0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#24 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x844aaf0) at vm.c:1052
#25 0x010a3360 in scm_primitive_load_path (args=0x844e330) at load.c:942
#26 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#27 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#28 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#29 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#30 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#31 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#32 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#33 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#34 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#35 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#36 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#37 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#38 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#39 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#40 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
#41 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
#42 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#43 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#44 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
#45 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
---Type <return> to continue, or q <return> to quit---
#46 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#47 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#48 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#49 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.

Program received signal SIGILL, Illegal instruction.
0x01108288 in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x3de879, nargs=0) at vm-i-loader.c:78
78        NEXT;
(gdb) bt
#0  0x01108288 in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x3de879, nargs=0) at vm-i-loader.c:78
#1  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x84dfa60, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#2  0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x84dfa80) at vm.c:1052
#3  0x010a3360 in scm_primitive_load_path (args=0x84eaa08) at load.c:942
#4  0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d2638, nargs=0) at vm-i-system.c:850
#5  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x846c1b0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#6  0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x846c1d0) at vm.c:1052
#7  0x010a3360 in scm_primitive_load_path (args=0x8476f90) at load.c:942
#8  0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d24d4, nargs=0) at vm-i-system.c:850
#9  0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x844aad0, argv=argv@entry=0x0, nargs=nargs@entry=0) at vm.c:741
#10 0x0111731d in scm_load_compiled_with_vm (file=file@entry=0x844aaf0) at vm.c:1052
#11 0x010a3360 in scm_primitive_load_path (args=0x844e330) at load.c:942
#12 0x01109a7e in vm_debug_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x80d2370, nargs=1) at vm-i-system.c:850
#13 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8137930, argv=argv@entry=0x17ff780, nargs=nargs@entry=1) at vm.c:741
#14 0x0107be37 in scm_primitive_eval (exp=exp@entry=0x81c76c8) at eval.c:685
#15 0x0107beb0 in scm_eval (exp=0x81c76c8, module_or_state=module_or_state@entry=0x8184678) at eval.c:719
#16 0x010d3bb3 in scm_shell (argc=1, argv=0x17ffcf8) at script.c:441
#17 0x0109c63c in invoke_main_func (body_data=0x17ffc40) at init.c:338
#18 0x010710c0 in c_body (d=0x17ffb84) at continuations.c:511
#19 0x010fd094 in apply_catch_closure (clo=0x81f6ec0, args=0x304) at throw.c:146
#20 0x010d41ef in apply_1 (smob=0x81f6ec0, a=0x304) at smob.c:141
#21 0x01114ac7 in vm_regular_engine (vm=0x80ce4e0, program=0x80c9fc0, argv=0x10d41c0, nargs=135077976) at vm-i-system.c:853
#22 0x01116f2a in scm_c_vm_run (vm=0x80ce4e0, program=program@entry=0x8165b70, argv=argv@entry=0x17ffa90, nargs=nargs@entry=4) at vm.c:741
#23 0x0107b834 in scm_call_4 (proc=0x8165b70, arg1=arg1@entry=0x404, arg2=arg2@entry=0x81f6ec0, arg3=arg3@entry=0x81f6eb0, arg4=arg4@entry=0x81f6ea0) at eval.c:507
#24 0x010fd496 in scm_catch_with_pre_unwind_handler (key=key@entry=0x404, thunk=thunk@entry=0x81f6ec0, handler=handler@entry=0x81f6eb0, 
    pre_unwind_handler=0x81f6ea0) at throw.c:86
#25 0x010fd67c in scm_c_catch (tag=tag@entry=0x404, body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=pre_unwind_handler_data@entry=0x81338d0) at throw.c:213
#26 0x010718f3 in scm_i_with_continuation_barrier (body=body@entry=0x10710b0 <c_body>, body_data=body_data@entry=0x17ffb84, 
    handler=handler@entry=0x1071540 <c_handler>, handler_data=handler_data@entry=0x17ffb84, 
    pre_unwind_handler=pre_unwind_handler@entry=0x1071200 <pre_unwind_handler>, pre_unwind_handler_data=0x81338d0) at continuations.c:449
#27 0x010719d6 in scm_c_with_continuation_barrier (func=0x109c600 <invoke_main_func>, data=0x17ffc40) at continuations.c:545
#28 0x010fa95a in with_guile_trampoline (data=0x17ffc14) at threads.c:888
#29 with_gc_active (data=0x17ffc14, func=<optimized out>) at threads.c:255
#30 with_guile_and_parent (base=0x17ffbec, data=0x17ffc14) at threads.c:934
#31 0x011ab21e in GC_call_with_stack_base () from /usr/lib/libgc.so.1
#32 0x010fab7f in scm_i_with_guile_and_parent (parent=<optimized out>, data=0x17ffc40, func=0x109c600 <invoke_main_func>) at threads.c:949
#33 scm_with_guile (func=func@entry=0x109c600 <invoke_main_func>, data=data@entry=0x17ffc40) at threads.c:955
#34 0x0109c7c5 in scm_boot_guile (argc=argc@entry=1, argv=argv@entry=0x17ffcf8, main_func=main_func@entry=0x8048960 <inner_main>, closure=closure@entry=0x0)
    at init.c:321
#35 0x08048875 in main (argc=1, argv=0x17ffcf8) at guile.c:71
(gdb) continue 
Continuing.

Program terminated with signal SIGILL, Illegal instruction.
The program no longer exists.
(gdb) 


[-- Attachment #4: hurdlibgcinstall --]
[-- Type: text/plain, Size: 1181 bytes --]

bubu@debian:~/devel/gc-7.2$ make install
make[1]: Entering directory `/home/bubu/devel/gc-7.2'
make[2]: Entering directory `/home/bubu/devel/gc-7.2'
test -z "/home/bubu/devel/libgc/lib" || /bin/mkdir -p "/home/bubu/devel/libgc/lib"
 /bin/bash ./libtool   --mode=install /usr/bin/install -c   libgc.la libcord.la '/home/bubu/devel/libgc/lib'
libtool: install: /usr/bin/install -c .libs/libgc.so.1.0.3 /home/bubu/devel/libgc/lib/libgc.so.1.0.3
libtool: install: (cd /home/bubu/devel/libgc/lib && { ln -s -f libgc.so.1.0.3 libgc.so.1 || { rm -f libgc.so.1 && ln -s libgc.so.1.0.3 libgc.so.1; }; })
libtool: install: (cd /home/bubu/devel/libgc/lib && { ln -s -f libgc.so.1.0.3 libgc.so || { rm -f libgc.so && ln -s libgc.so.1.0.3 libgc.so; }; })
libtool: install: /usr/bin/install -c .libs/libgc.lai /home/bubu/devel/libgc/lib/libgc.la
libtool: install: error: cannot install `libcord.la' to a directory not ending in /usr/local/lib
make[2]: *** [install-libLTLIBRARIES] Error 1
make[2]: Leaving directory `/home/bubu/devel/gc-7.2'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/bubu/devel/gc-7.2'
make: *** [install-recursive] Error 1
bubu@debian:~/devel/gc-7.2$

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

* Re: Guile not running properly on GNU/Hurd
  2013-02-02 22:24 ` Richard Braun
@ 2013-02-04 22:09   ` Ludovic Courtès
  2013-02-04 22:14     ` Pino Toscano
  2013-02-09  9:48   ` Neal H. Walfield
  1 sibling, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2013-02-04 22:09 UTC (permalink / raw)
  To: bug-hurd; +Cc: guile-user

Richard Braun <rbraun@sceen.net> skribis:

> On Sat, Feb 02, 2013 at 07:51:38PM +0100, Gabriel Schnoering wrote:
>> I can't run guile in gdb as there are some error with the garbage
>> collector.
>
> These are probably not errors.

Indeed, you need to let a couple of signals through:

  handle SIGPWR noprint nostop
  handle SIGXCPU noprint nostop

See ‘gdbinit’ in the Guile distro.

Ludo’.



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

* Re: Guile not running properly on GNU/Hurd
  2013-02-04 22:09   ` Ludovic Courtès
@ 2013-02-04 22:14     ` Pino Toscano
  0 siblings, 0 replies; 9+ messages in thread
From: Pino Toscano @ 2013-02-04 22:14 UTC (permalink / raw)
  To: bug-hurd; +Cc: guile-user

[-- Attachment #1: Type: Text/Plain, Size: 648 bytes --]

Alle lunedì 4 febbraio 2013, Ludovic Courtès ha scritto:
> Richard Braun <rbraun@sceen.net> skribis:
> > On Sat, Feb 02, 2013 at 07:51:38PM +0100, Gabriel Schnoering wrote:
> >> I can't run guile in gdb as there are some error with the garbage
> >> collector.
> > 
> > These are probably not errors.
> 
> Indeed, you need to let a couple of signals through:
> 
>   handle SIGPWR noprint nostop
>   handle SIGXCPU noprint nostop
> 
> See ‘gdbinit’ in the Guile distro.

You will need to make gdb ignore and let through SIGUSR1 and SIGUSR2, 
which are used on Hurd by libgc for its internal communication.

-- 
Pino Toscano

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

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

* Re: Guile not running properly on GNU/Hurd
  2013-02-04 18:26 ` Gabriel Schnoering
@ 2013-02-08 18:08   ` Gabriel Schnoering
  2013-02-08 22:18     ` Richard Braun
  0 siblings, 1 reply; 9+ messages in thread
From: Gabriel Schnoering @ 2013-02-08 18:08 UTC (permalink / raw)
  To: guile-user; +Cc: bug-hurd, rbraun

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

Hi,

After some more investigation (especially by Richard Braun)

And running various version of guile both with libgc 7.1-9.1,
problems still occur.
It seems that libgc will trigger some issue with signal handling and mach.

Here are the gdb logs for the guile packed with Debian.
(not sure it is of any use as the issue occurs in another thread)
http://bpaste.net/show/9qIgjwFjyrYZUGn7FxJ0/ (GNU Guile 2.0.5-deb+1-3)

And another one from 2.0.7 sources.
http://bpaste.net/show/WnMIobeRtRaWmJl1ncNg/ (Guile 2.0.7)

Maybe Richard will be able to give more details about the issue.


As a side note, building Guile 2.0.7 against libgc 7.2d "seem" to make
guile run properly for trivial tests on hurd.
Nevertheless "make check" still fails for a few tests, but this seems a
"less worse" issue.
Let me know if I can test a few more things.

Regards,

Gabriel Schnoering.

[-- Attachment #2: hurdguilecheckfail130207 --]
[-- Type: text/plain, Size: 7476 bytes --]

bubu@debian:~/devel/guile-2.0.7$ make check
  GEN      public-submodule-commit
make  check-recursive
make[1]: Entering directory `/home/bubu/devel/guile-2.0.7'
Making check in lib
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make  check-recursive
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make[4]: Entering directory `/home/bubu/devel/guile-2.0.7/lib'
make[4]: Nothing to be done for `check-am'.
make[4]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/lib'
Making check in meta
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/meta'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/meta'
Making check in libguile
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/libguile'
make  check-am
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/libguile'
make[3]: Nothing to be done for `check-am'.
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/libguile'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/libguile'
Making check in module
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/module'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/module'
Making check in guile-readline
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make  check-am
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make[3]: Nothing to be done for `check-am'.
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/guile-readline'
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/guile-readline'
Making check in examples
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/examples'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/examples'
Making check in emacs
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/emacs'
make[2]: Nothing to be done for `check'.
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/emacs'
Making check in test-suite
make[2]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite'
Making check in standalone
make[3]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  check-am
make[4]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  test-num2integral test-round test-list test-unwind test-conversion test-loose-ends test-scm-c-read test-scm-take-locale-symbol test-scm-take-u8vector test-scm-to-latin1-string test-scm-values test-with-guile-module test-scm-with-guile test-scm-spawn-thread test-pthread-create test-pthread-create-secondary test-system-cmds test-bad-identifiers test-require-extension test-guile-snarf test-import-order test-command-line-encoding test-command-line-encoding2 test-asmobs test-ffi test-fast-slot-ref test-mb-regexp test-use-srfi test-extensions
make[5]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
  CC       test_num2integral-test-num2integral.o
  CCLD     test-num2integral
  CC       test_round-test-round.o
  CCLD     test-round
  CC       test_list-test-list.o
  CCLD     test-list
  CC       test_unwind-test-unwind.o
  CCLD     test-unwind
  CC       test_conversion-test-conversion.o
  CCLD     test-conversion
  CC       test_loose_ends-test-loose-ends.o
  CCLD     test-loose-ends
  CC       test_scm_c_read-test-scm-c-read.o
  CCLD     test-scm-c-read
  CC       test_scm_take_locale_symbol-test-scm-take-locale-symbol.o
  CCLD     test-scm-take-locale-symbol
  CC       test_scm_take_u8vector-test-scm-take-u8vector.o
  CCLD     test-scm-take-u8vector
  CC       test_scm_to_latin1_string-test-scm-to-latin1-string.o
  CCLD     test-scm-to-latin1-string
  CC       test_scm_values-test-scm-values.o
  CCLD     test-scm-values
  CC       test_with_guile_module-test-with-guile-module.o
  CCLD     test-with-guile-module
  CC       test_scm_with_guile-test-scm-with-guile.o
  CCLD     test-scm-with-guile
  CC       test_scm_spawn_thread-test-scm-spawn-thread.o
  CCLD     test-scm-spawn-thread
  CC       test_pthread_create-test-pthread-create.o
  CCLD     test-pthread-create
  CC       test_pthread_create_secondary-test-pthread-create-secondary.o
  CCLD     test-pthread-create-secondary
make[5]: Nothing to be done for `test-system-cmds'.
make[5]: Nothing to be done for `test-bad-identifiers'.
make[5]: Nothing to be done for `test-require-extension'.
make[5]: Nothing to be done for `test-guile-snarf'.
make[5]: Nothing to be done for `test-import-order'.
make[5]: Nothing to be done for `test-command-line-encoding'.
make[5]: Nothing to be done for `test-command-line-encoding2'.
make[5]: Nothing to be done for `test-asmobs'.
make[5]: Nothing to be done for `test-ffi'.
make[5]: `test-fast-slot-ref' is up to date.
make[5]: Nothing to be done for `test-mb-regexp'.
make[5]: `test-use-srfi' is up to date.
make[5]: Nothing to be done for `test-extensions'.
make[5]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make  check-TESTS
make[5]: Entering directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
PASS: test-system-cmds
PASS: test-bad-identifiers
PASS: test-require-extension
PASS: test-guile-snarf
PASS: test-import-order
PASS: test-command-line-encoding
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US)
PASS: test-command-line-encoding2
PASS: test-num2integral
PASS: test-round
PASS: test-asmobs
PASS: test-ffi
PASS: test-list
PASS: test-unwind
PASS: test-conversion
PASS: test-loose-ends
/bin/bash: line 5: 23567 Illegal instruction     srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-fast-slot-ref
PASS: test-mb-regexp
Illegal instruction
guile --use-srfi=1,10 fails to run
FAIL: test-use-srfi
PASS: test-scm-c-read
PASS: test-scm-take-locale-symbol
PASS: test-scm-take-u8vector
PASS: test-scm-to-latin1-string
PASS: test-scm-values
PASS: test-extensions
Threads explicit registering is not previously enabled
/bin/bash: line 5: 23858 Aborted                 srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-with-guile-module
PASS: test-scm-with-guile
PASS: test-scm-spawn-thread
Threads explicit registering is not previously enabled
/bin/bash: line 5: 23950 Aborted                 srcdir="." builddir="." CHARSETALIASDIR="/home/bubu/devel/guile-2.0.7/lib" GUILE_AUTO_COMPILE=0 "../../meta/uninstalled-env" ${dir}$tst
FAIL: test-pthread-create
SKIP: test-pthread-create-secondary
==================================
4 of 28 tests failed
(1 test was not run)
Please report to bug-guile@gnu.org
==================================
make[5]: *** [check-TESTS] Error 1
make[5]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[4]: *** [check-am] Error 2
make[4]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[3]: *** [check] Error 2
make[3]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite/standalone'
make[2]: *** [check-recursive] Error 1
make[2]: Leaving directory `/home/bubu/devel/guile-2.0.7/test-suite'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/home/bubu/devel/guile-2.0.7'
make: *** [check] Error 2
bubu@debian:~/devel/guile-2.0.7$

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

* Re: Guile not running properly on GNU/Hurd
  2013-02-08 18:08   ` Gabriel Schnoering
@ 2013-02-08 22:18     ` Richard Braun
  2013-02-08 23:41       ` Ludovic Courtès
  0 siblings, 1 reply; 9+ messages in thread
From: Richard Braun @ 2013-02-08 22:18 UTC (permalink / raw)
  To: Gabriel Schnoering; +Cc: guile-user, bug-hurd

On Fri, Feb 08, 2013 at 07:08:05PM +0100, Gabriel Schnoering wrote:
> And running various version of guile both with libgc 7.1-9.1,
> problems still occur.
> It seems that libgc will trigger some issue with signal handling and mach.
> 
> Here are the gdb logs for the guile packed with Debian.
> (not sure it is of any use as the issue occurs in another thread)
> http://bpaste.net/show/9qIgjwFjyrYZUGn7FxJ0/ (GNU Guile 2.0.5-deb+1-3)
> 
> And another one from 2.0.7 sources.
> http://bpaste.net/show/WnMIobeRtRaWmJl1ncNg/ (Guile 2.0.7)
> 
> Maybe Richard will be able to give more details about the issue.

Actually, it has nothing to do with Mach. What happens is that, when
catching one of the SIGUSR signals (SIGUSR1 i guess), the process calls
sigsuspend, waiting for the next (probably SIGUSR2). But when returning
from the handler (in sigreturn), the sigcontext is NULL, which actually
makes sigreturn return. This is prohibited, and catched by setting the
stack frame to run the firewall function (which, by running the hlt
instruction, causes the SIGILL signal). I guess we could reduce the
case to a small test unit that calls sigsuspend in a (SA_SIGINFO)
signal handler and see how it goes, in which case there is a bug in the
signal handling code.

See the following glibc files for reference :
 - sysdeps/mach/hurd/i386/trampoline.c
 - sysdeps/mach/hurd/i386/sigreturn.c

-- 
Richard Braun



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

* Re: Guile not running properly on GNU/Hurd
  2013-02-08 22:18     ` Richard Braun
@ 2013-02-08 23:41       ` Ludovic Courtès
  0 siblings, 0 replies; 9+ messages in thread
From: Ludovic Courtès @ 2013-02-08 23:41 UTC (permalink / raw)
  To: bug-hurd; +Cc: guile-user

Richard Braun <rbraun@sceen.net> skribis:

> Actually, it has nothing to do with Mach. What happens is that, when
> catching one of the SIGUSR signals (SIGUSR1 i guess), the process calls
> sigsuspend, waiting for the next (probably SIGUSR2). But when returning
> from the handler (in sigreturn), the sigcontext is NULL, which actually
> makes sigreturn return. This is prohibited, and catched by setting the
> stack frame to run the firewall function (which, by running the hlt
> instruction, causes the SIGILL signal). I guess we could reduce the
> case to a small test unit that calls sigsuspend in a (SA_SIGINFO)
> signal handler and see how it goes, in which case there is a bug in the
> signal handling code.

Perhaps one test would be to #undef SA_SIGINFO in libgc’s
pthread_stop_world.c, and see if the problem still occurs?

Ludo’.




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

* Re: Guile not running properly on GNU/Hurd
  2013-02-02 22:24 ` Richard Braun
  2013-02-04 22:09   ` Ludovic Courtès
@ 2013-02-09  9:48   ` Neal H. Walfield
  1 sibling, 0 replies; 9+ messages in thread
From: Neal H. Walfield @ 2013-02-09  9:48 UTC (permalink / raw)
  To: Richard Braun; +Cc: Gabriel Schnoering, guile-user, bug-hurd

At Sat, 2 Feb 2013 23:24:38 +0100,
Richard Braun wrote:
> On Sat, Feb 02, 2013 at 07:51:38PM +0100, Gabriel Schnoering wrote:
> > I can't run guile in gdb as there are some error with the garbage
> > collector.
> 
> These are probably not errors. Many language interpretors rely on
> receiving SIGSEGV to implement memory. Use the gdb "handle" command to
> make it automatically pass on SIGSEGV signals so that you only catch the
> SIGILL you're interested in.

It might be an interesting project to use Mach Memory Objects to back
garbage collected memory rather than rely on the SIGSEGV machinery.
This would be more efficient and perhaps more accurate.  You'd still
have to deal with the stack separately.

Neal



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

end of thread, other threads:[~2013-02-09  9:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-02 18:51 Guile not running properly on GNU/Hurd Gabriel Schnoering
2013-02-02 22:24 ` Richard Braun
2013-02-04 22:09   ` Ludovic Courtès
2013-02-04 22:14     ` Pino Toscano
2013-02-09  9:48   ` Neal H. Walfield
2013-02-04 18:26 ` Gabriel Schnoering
2013-02-08 18:08   ` Gabriel Schnoering
2013-02-08 22:18     ` Richard Braun
2013-02-08 23:41       ` Ludovic Courtès

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).