[Gc] I/O issues
hans.boehm at hp.com
Tue Sep 9 13:00:37 PDT 2008
> -----Original Message-----
> From: gc-bounces at napali.hpl.hp.com
> [mailto:gc-bounces at napali.hpl.hp.com] On Behalf Of Nicolas Cannasse
> Sent: Monday, September 08, 2008 2:41 AM
> To: gc at napali.hpl.hp.com
> Subject: [Gc] I/O issues
> Sorry for the multiple messages recently, we could fix a lot
> of things thanks to the help of the people on the list.
> We are still experiencing one last issue, which is related to
> I/O functions.
> In some rare cases, two of our threads get blocked in a I/O
> function (either recv() , fread() , or __read_nocancel()).
> The two threads are usually unrelated - one can be a MYSQL
> response beeing read while the other is reading a file - but
> they get blocked at the same time. Seems like a deadlock to me.
> I wonder is there are some issues with multithreading + linux
> IO + gc signals. Even if the EINTR return values would not be
> handled everywhere, I guess it should still cause an error
> and not cause the threads to block.
> Any advice would be appreciated.
I haven't encountered this. They are blocked even though input is available? There is no signal handler on the stack, and no sign of the GC being involved in a deadlock? Does wrapping the call in GC_do_blocking() work around the problem?
> Gc mailing list
> Gc at linux.hpl.hp.com
More information about the Gc