[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: reentrant port table stuff

From: Chris Cramer
Subject: Re: reentrant port table stuff
Date: Mon, 27 Aug 2001 12:12:28 -0500
User-agent: Mutt/1.2.5i

On Mon, Aug 27, 2001 at 12:38:37AM +0200, Marius Vollmer wrote:
> I can not get this to crash.  It just runs, but gets _very_ slow after
> about 900000 iterations.  I don't know why yet.

This is very puzzling. It has very consistently segfaulted for me.
I guess I'll need to do some more testing. I'll try some older versions,
and I'll try it on some other computers.

> What did you do exactly?  How did you configure your guile?

Originally, I configured with --with-threads --enable-maintainer-mode.
Then, while trying to figure out why it was segfaulting, I noticed that
Guile was using pthreads, which I was trying to avoid, so I added the
option to disable that. So I started using --disable-linuxthreads.

I added some things to disable interrupts and garbage collection
(I don't think I sent in the patch that disabled gc) around the port
table code. It eliminated the segfaults, but then when I tested it
without --disable-linuxthreads, it still segfaulted. Only thing is,
this time the segfaults weren't occuring anywhere near the port table
code. Usually in garbage collection, while marking thread stacks, but
sometimes in the evaluator, and sometimes just in random places.

So, I got it to not segfault under certain circumstances. I could never
figure out why, though, so I took out the changes I made and sort of gave
up on threads. It looked to me like there is a race in the evaluator,
but I'm not ready to suggest anything until I really know what's going on.

C. Ray C. aka Christopher Cramer

reply via email to

[Prev in Thread] Current Thread [Next in Thread]