[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    Re: Wine problem with XFree 4.0
From:       Alexandre Julliard <julliard () winehq ! com>
Date:       2000-03-26 18:43:00
[Download RAW message or body]

Andrew Lewycky <amplewyc@undergrad.math.uwaterloo.ca> writes:

> If you want to send a signal to a specific thread, use pthread_kill. This
> can only be done from another thread, so we could dedicate a thread to
> dispatching signals from the wineserver to wine threads.

I don't like this. It quickly becomes very problematic if the server
has to synchronize with a helper thread in every process. Besides we
already create too many threads (and linuxthreads is not going to help
here); at the present we use 4 threads plus the server simply to run
Solitaire, that's already too much.

> I think it's a non issue. Originally I thought that getting a signal and
> longjmping repeatedly out would eventually exhaust the kernel stack. Silly
> me. linuxthreads keeps track of when we are in a signal handler, but it
> seems to only use that for an optimisation. The only other catch is that
> if somebody calls CreateThread while on the signal stack, the child will
> inherit the signal stack and although it turns it off ASAP, we will have
> trouble if a signal comes in first.

This sounds like a kernel bug. A cloned child should not inherit the
signal stack IMO.

-- 
Alexandre Julliard
julliard@winehq.com

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic