[#1834] New syck bug — Chad Fowler <chad@...>
There is a new syck bug that appears to be caused by the recent fix for
[#1836] exit inside test/unit — nobu.nokada@...
Hi,
On Dec 1, 2003, at 02:55, nobu.nokada@softhome.net wrote:
[#1843] DRb tests hang on OS X 10.3.1 — Nathaniel Talbott <nathaniel@...>
I haven't yet been able to test this on another platform to see if it
[#1846] Re: Constants, class variables and the cbase field — george.marrows@...
> What kind of behavior do you want (to change)? Remember you're saying
Hi,
On Monday 01 December 2003 06:44 pm, Yukihiro Matsumoto wrote:
Hi,
On Tuesday 02 December 2003 04:02 am, Yukihiro Matsumoto wrote:
[#1884] multiple exceptions for assert_raises — nobu.nokada@...
Hi,
Hi,
On Dec 4, 2003, at 02:34, Yukihiro Matsumoto wrote:
On Dec 4, 2003, at 01:35, nobu.nokada@softhome.net wrote:
On Dec 4, 2003, at 10:39, Nathaniel Talbott wrote:
[#1901] Test::Unit problem — "Sean E. Russell" <ser@...>
-----BEGIN PGP SIGNED MESSAGE-----
Hi,
[#1914] -Wall warnings from 1.8.1 p3 — Daniel Berger <djberge@...>
Here are some potentially significant warnings from 1.8.1 p3
nobu.nokada@softhome.net wrote:
[#1932] --enable-pthread broken? — Nathaniel Talbott <nathaniel@...>
[ruby-talk: 87759] and the surrounding thread seem to indicate that
Hi,
On Dec 11, 2003, at 11:49, Yukihiro Matsumoto wrote:
>>>>> "N" == Nathaniel Talbott <nathaniel@talbott.ws> writes:
Hi,
On Dec 11, 2003, at 16:10, nobu.nokada@softhome.net wrote:
Hi,
Hi,
On Dec 11, 2003, at 20:48, Yukihiro Matsumoto wrote:
Hi,
>>>>> "Y" == Yukihiro Matsumoto <matz@ruby-lang.org> writes:
Hi,
>>>>> "Y" == Yukihiro Matsumoto <matz@ruby-lang.org> writes:
Hi,
>>>>> "Y" == Yukihiro Matsumoto <matz@ruby-lang.org> writes:
Hi,
[#1936] Can't define +@ for Symbol (plus ruby install problem) — "T. Onoma" <transami@...>
I wanted to see if the +@ problem was fixed in 1.8.1 preview 3 but when I do
Hi,
On Friday 12 December 2003 02:39 am, Yukihiro Matsumoto wrote:
Hi,
Hi.
Hi,
[#1973] Where to install documentation — Dave Thomas <dave@...>
Folks:
Hi,
Dave Thomas (dave@pragprog.com) wrote:
>
>> Using the standard install.rb, anything you include in a project's
Hi,
On Tue, Dec 16, 2003 at 03:52:26PM +0900, Dave Thomas wrote:
Hi,
[#2013] Mixin Module, Possible Bug? — "T. Onoma" <transami@...>
According to Pickaxe, Ch. 19, pg. 245, under Mixin Modules:
[#2037] --enable-pthread still segfaults... — Nathaniel Talbott <nathaniel@...>
I've finally been able to test my application under load using the
Hi,
On Dec 23, 2003, at 14:17, Yukihiro Matsumoto wrote:
Hi,
On Dec 23, 2003, at 14:34, Yukihiro Matsumoto wrote:
Hi,
On Dec 23, 2003, at 14:44, Yukihiro Matsumoto wrote:
Hi,
> I'm afraid you're using old configure file. Can you wipe off old
On Dec 23, 2003, at 15:18, Nathaniel Talbott wrote:
In message "Re: --enable-pthread still segfaults..."
On Dec 23, 2003, at 16:34, Yukihiro Matsumoto wrote:
Hi,
On Dec 23, 2003, at 17:04, Yukihiro Matsumoto wrote:
Hi,
On Dec 23, 2003, at 17:29, Yukihiro Matsumoto wrote:
Hi,
[#2071] rdoc is broken in 1.8.1 — Alexander Bokovoy <a.bokovoy@...>
Greetings!
[#2084] Error with Socket.getaddrinfo on OS X — Richard Kilmer <rich@...>
On OS X Panther:
[#2101] Can't call to_s on a frozen Date — Gavin Sinclair <gsinclair@...>
Interesting...
[#2102] syck segfaults when used in rdoc — Alexander Bokovoy <a.bokovoy@...>
Greetings!
>>>>> "A" == Alexander Bokovoy <a.bokovoy@sam-solutions.net> writes:
On Sun, Dec 28, 2003 at 11:41:49PM +0900, ts wrote:
>>>>> "A" == Alexander Bokovoy <a.bokovoy@sam-solutions.net> writes:
Hi,
[#2122] Bad interaction between timeout.rb and --enable-pthread — Nathaniel Talbott <nathaniel@...>
Here's a testcase that shows the problem:
I should have reduced it more before posting...
Nathaniel Talbott wrote:
Hi,
Hi,
On Jan 1, 2004, at 11:29, Yukihiro Matsumoto wrote:
On Jan 1, 2004, at 12:14, Nathaniel Talbott wrote:
Re: --enable-pthread broken?
Hi,
In message "Re: --enable-pthread broken?"
on 03/12/12, Nathaniel Talbott <nathaniel@talbott.ws> writes:
| | enable-pthread |
| | with (unpatched) | with (patched) | without |
|---------------------------------------------------------------
| Main app | segfault | untested | blocked |
|---------------------------------------------------------------
|killer.rb | segfault | blocked | inconclusive |
|
|I hope this helps; please let me know if there's any more information
|you need. I'll let you know if I manage to get killer.rb to block
|without --enable-pthread.
LinuxThread has something bad with signal handling, I guess. This
patch may solve the blocking problem at the cost of potential
performance slow down. Can you try (with --enable-pthread)?
matz.
--- eval.c 13 Dec 2003 00:01:28 -0000 1.603
+++ eval.c 13 Dec 2003 02:00:21 -0000
@@ -9487,3 +9487,63 @@ rb_thread_alloc(klass)
-#if defined(HAVE_SETITIMER)
+static int thread_init = 0;
+
+#if defined(HAVE_LIBPTHREAD) && defined(_REENTRANT)
+# define PTHREAD_TIMER
+#endif
+
+#if defined(POSIX_SIGNAL)
+# define ruby_signal(x,y) posix_signal((x), (y))
+#else
+# define ruby_signal(x,y) signal((x), (y))
+#endif
+
+#if defined(PTHREAD_TIMER)
+static pthread_t time_thread;
+
+static void
+catch_timer(sig)
+ int sig;
+{
+#if !defined(POSIX_SIGNAL) && !defined(BSD_SIGNAL)
+ signal(sig, catch_timer);
+#endif
+ rb_thread_schedule();
+}
+
+static void*
+thread_timer(dummy)
+ void *dummy;
+{
+ struct timespec req, rem;
+
+ for (;;) {
+ if (!rb_thread_critical) {
+#if 1
+ if (rb_trap_immediate) {
+ pthread_kill(ruby_thid, SIGVTALRM);
+ }
+ else {
+ rb_thread_pending = 1;
+ }
+#else
+ rb_thread_pending = 1;
+#endif
+ req.tv_sec = 0;
+ req.tv_nsec = 10000000;
+ nanosleep(&req, &rem);
+ }
+ }
+}
+
+void
+rb_thread_start_timer()
+{
+}
+
+void
+rb_thread_stop_timer()
+{
+}
+#elif defined(HAVE_SETITIMER)
+
static void
@@ -9502,8 +9562,2 @@ catch_timer(sig)
}
-#else
-int rb_thread_tick = THREAD_TICK;
-#endif
-
-#if defined(HAVE_SETITIMER)
-static int thread_init = 0;
@@ -9532,2 +9586,4 @@ rb_thread_stop_timer()
}
+#else
+int rb_thread_tick = THREAD_TICK;
#endif
@@ -9551,14 +9607,14 @@ rb_thread_start_0(fn, arg, th)
-#if defined(HAVE_SETITIMER)
if (!thread_init) {
-#ifdef POSIX_SIGNAL
- posix_signal(SIGVTALRM, catch_timer);
-#else
- signal(SIGVTALRM, catch_timer);
-#endif
-
thread_init = 1;
+#if defined(HAVE_SETITIMER) || defined(PTHREAD_TIMER)
+ ruby_signal(SIGVTALRM, catch_timer);
+
+#ifdef PTHREAD_TIMER
+ pthread_create(&time_thread, 0, thread_timer, 0);
+#else
rb_thread_start_timer();
- }
#endif
+#endif
+ }