From: "Ludovic Courtès" <INVALID.NOREPLY@gnu.org>
To: "Ludovic Courtès" <ludo@gnu.org>, bug-guile@gnu.org
Subject: [bug #29574] VM stack overflows aren't properly handled [1.9.10]
Date: Fri, 16 Apr 2010 09:01:53 +0000 [thread overview]
Message-ID: <20100416-090152.sv15145.27672@savannah.gnu.org> (raw)
In-Reply-To:
URL:
<http://savannah.gnu.org/bugs/?29574>
Summary: VM stack overflows aren't properly handled [1.9.10]
Project: Guile
Submitted by: civodul
Submitted on: Fri 16 Apr 2010 09:01:52 AM GMT
Category: None
Severity: 5 - Blocker
Item Group: None
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
Hello,
VM stack overflows lead to a native stack overflow (and segfault) when trying
to raise an exception:
#v+
$ ./meta/gdb-uninstalled-guile
GNU gdb (GDB) 7.0.1
Copyright (C) 2009 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 "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/ludo/src/guile/libguile/.libs/guile...done.
(gdb) r
Starting program: /home/ludo/src/guile/libguile/.libs/guile
[Thread debugging using libthread_db enabled]
;;; note: autocompilation is enabled, set GUILE_AUTO_COMPILE=0
;;; or pass the --no-autocompile argument to disable.
;;; compiling /home/ludo/src/guile/guile-readline/ice-9/readline.scm
;;; compiled
/home/ludo/src/guile/cache/guile/ccache/2.0-0.P-LE-8/home/ludo/src/guile/guile-readline/ice-9/readline.scm.go
[New Thread 0x7ffff5566710 (LWP 3308)]
GNU Guile 1.9.10
Copyright (C) 1995-2010 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)> (let loop () (cons 's (loop)))
Program received signal SIGSEGV, Segmentation fault.
GC_malloc_atomic (bytes=35) at thread_local_alloc.c:171
171 {
[...]
(gdb) bt -20
#41877 0x00007ffff7b3c1af in scm_vm_apply (vm=0x6bc430, program=0x749580,
args=0x304) at vm.c:559
#41878 0x00007ffff7b4d660 in vm_debug_engine (vm=<value optimized out>,
program=0x749580, argv=<value optimized out>, nargs=4) at vm-engine.c:269
#41879 0x00007ffff7b3c1af in scm_vm_apply (vm=0x6bc430, program=0x749580,
args=0x304) at vm.c:559
#41880 0x00007ffff7b4d660 in vm_debug_engine (vm=<value optimized out>,
program=0x749580, argv=<value optimized out>, nargs=4) at vm-engine.c:269
#41881 0x00007ffff7b3c1af in scm_vm_apply (vm=0x6bc430, program=0x749580,
args=0x304) at vm.c:559
#41882 0x00007ffff7b4d660 in vm_debug_engine (vm=<value optimized out>,
program=0x749580, argv=<value optimized out>, nargs=4) at vm-engine.c:269
#41883 0x00007ffff7b3c1af in scm_vm_apply (vm=0x6bc430, program=0x749580,
args=0x304) at vm.c:559
#41884 0x00007ffff7b4d660 in vm_debug_engine (vm=<value optimized out>,
program=0x1182a60, argv=<value optimized out>, nargs=18370328) at
vm-engine.c:269
#41885 0x00007ffff7ad5f23 in scm_primitive_eval (exp=0x8ab030) at eval.c:858
#41886 0x00007ffff7ad5f83 in scm_eval (exp=0x8ab030,
module_or_state=0x898e00) at eval.c:892
#41887 0x00007ffff7b17b6f in scm_shell (argc=1, argv=0x7fffffffc4e8) at
script.c:762
#41888 0x00007ffff7aeaf3f in invoke_main_func (body_data=0x7fffffffc3e0) at
init.c:380
#41889 0x00007ffff7acdf5a in c_body (d=0x7fffffffc310) at
continuations.c:475
#41890 0x00007ffff7b4e420 in vm_debug_engine (vm=<value optimized out>,
program=0x7f7ca0, argv=<value optimized out>, nargs=<value optimized out>) at
vm-i-system.c:924
#41891 0x00007ffff7ad4ee3 in scm_call_4 (proc=0x6590c0, arg1=<value optimized
out>, arg2=<value optimized out>, arg3=<value optimized out>, arg4=<value
optimized out>) at eval.c:594
#41892 0x00007ffff7ace1a3 in scm_i_with_continuation_barrier (body=<value
optimized out>, body_data=0x7fffffffc310, handler=0x7ffff7acdf70 <c_handler>,
handler_data=0x7fffffffc310,
pre_unwind_handler=<value optimized out>, pre_unwind_handler_data=<value
optimized out>) at continuations.c:452
#41893 0x00007ffff7ace240 in scm_c_with_continuation_barrier (func=<value
optimized out>, data=<value optimized out>) at continuations.c:493
#41894 0x00007ffff7b38232 in scm_i_with_guile_and_parent (func=<value
optimized out>, data=<value optimized out>, parent=<value optimized out>) at
threads.c:734
#41895 0x00007ffff7aeaef5 in scm_boot_guile (argc=<value optimized out>,
argv=<value optimized out>, main_func=0, closure=0x1) at init.c:363
#41896 0x0000000000400bb0 in main (argc=35, argv=0x7ffff7b73557) at
guile.c:70
#v-
Thanks,
Ludo'.
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?29574>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
next reply other threads:[~2010-04-16 9:01 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-16 9:01 Ludovic Courtès [this message]
2010-05-11 21:33 ` [bug #29574] VM stack overflows aren't properly handled [1.9.10] Ludovic Courtès
2010-05-21 11:27 ` Andy Wingo
2010-05-22 9:34 ` Ludovic Courtès
2010-05-22 14:39 ` Andy Wingo
2010-05-22 15:55 ` Ludovic Courtès
2010-05-24 14:51 ` Ken Raeburn
2010-05-26 21:56 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/guile/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100416-090152.sv15145.27672@savannah.gnu.org \
--to=invalid.noreply@gnu.org \
--cc=bug-guile@gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).