From: Andrew Hunt Date: 2000-05-18T23:18:37-04:00 Subject: [ruby-talk:02901] Re: mod_ruby SEGV Shugo writes: >Can you get a stacktrace with gdb? > >ex). > ># gdb /usr/sbin/apache >... >(gdb) run -X > >(gdb) bt Well, not a very helpful one: Program received signal SIGSEGV, Segmentation fault. 0x4028b52c in ?? () from /usr/local/lib/libruby.so.1.5 (gdb) bt #0 0x4028b52c in ?? () from /usr/local/lib/libruby.so.1.5 #1 0x4028b695 in ?? () from /usr/local/lib/libruby.so.1.5 Everything is compiled with -g, but it doesn't look like there is much left to report. strace ends up with the following: stat("/usr/local/lib/ruby/site_ruby/1.5/i686-linux/delegate.rb", 0xbfffca3c) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/site_ruby/1.5/delegate.rb", 0xbfffca3c) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/site_ruby/delegate.rb", 0xbfffca3c) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/1.5/i686-linux/delegate.rb", 0xbfffca3c) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/1.5/delegate.rb", {st_mode=0, st_size=0, ...}) = 0 stat("/usr/local/lib/ruby/site_ruby/1.5/i686-linux/delegate.rb", 0xbfffc924) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/site_ruby/1.5/delegate.rb", 0xbfffc924) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/site_ruby/delegate.rb", 0xbfffc924) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/1.5/i686-linux/delegate.rb", 0xbfffc924) = -1 ENOENT (No such file or directory) stat("/usr/local/lib/ruby/1.5/delegate.rb", {st_mode=0, st_size=0, ...}) = 0 open("/usr/local/lib/ruby/1.5/delegate.rb", O_RDONLY) = 4 close(4) = 0 open("/usr/local/lib/ruby/1.5/delegate.rb", O_RDONLY) = 4 gettimeofday({958706117, 327257}, NULL) = 0 select(5, [4], [], [], {298, 542147}) = 1 (in [4], left {298, 550000}) fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40190000 read(4, "# Delegation class that delegat"..., 4096) = 2384 gettimeofday({958706117, 336703}, NULL) = 0 select(5, [4], [], [], {298, 532702}) = 1 (in [4], left {298, 540000}) read(4, "", 4096) = 0 close(4) = 0 munmap(0x40190000, 4096) = 0 --- SIGVTALRM (Virtual timer expired) --- sigreturn() = ? (mask now []) --- SIGVTALRM (Virtual timer expired) --- sigreturn() = ? (mask now []) mmap(0, 200704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401e8000 gettimeofday({958706117, 373618}, NULL) = 0 select(1, [], [], [], {0, 0}) = 0 (Timeout) brk(0x80df000) = 0x80df000 --- SIGVTALRM (Virtual timer expired) --- sigreturn() = ? (mask now []) gettimeofday({958706117, 398210}, NULL) = 0 select(1, [], [], [], {0, 0}) = 0 (Timeout) --- SIGVTALRM (Virtual timer expired) --- sigreturn() = ? (mask now []) gettimeofday({958706117, 409338}, NULL) = 0 select(1, [], [], [], {0, 0}) = 0 (Timeout) brk(0x80e1000) = 0x80e1000 alarm(300) = 300 alarm(0) = 300 gettimeofday({958706117, 416560}, NULL) = 0 gettimeofday({958706117, 416954}, NULL) = 0 --- SIGSEGV (Segmentation fault) --- write(2, "/usr/local/lib/ruby/1.5/cgi.rb:1"..., 61) = 61 write(2, "\n", 1) = 1 sigprocmask(SIG_UNBLOCK, [ABRT], NULL) = 0 getpid() = 4300 kill(4300, SIGABRT) = 0 --- SIGABRT (Aborted) --- +++ killed by SIGABRT +++