[Jason Tishler] > Ding, ding, ding! We have a winner: Congratulations! > http://sf.net/tracker/?group_id=5470&atid=305470&func=detail&aid=742741 > > The above patch enables HAVE_PTHREAD_SIGMASK under Cygwin which was > not enabled before. > > ... > > Scanning the Cygwin code, I found the following: > > extern "C" int > pthread_sigmask (int operation, const sigset_t *set, sigset_t > *old_set) > { > pthread *thread = pthread::self (); > > // lock this myself, for the use of thread2signal > ***> // two differt kills might clash: FIXME > [snip] > } > > Hence, it seems that my hypothesis that a Python change was tickling a > Cygwin bug (i.e., the above FIXME or another issue) is correct. > > So, the question is how should we deal with this issue? > > 1. Leave the Python code base alone and assume that Cygwin's > pthread_sigmask() will get fixed. Additionally, assume I will > patch around this problem until that happens. > 2. Patch the Python code base so that HAVE_PTHREAD_SIGMASK is > undefined under Cygwin. > > I recommend option #1. Do others agree? I don't know. It seems the only effect of HAVE_PTHREAD_SIGMASK is to decide whether Python uses pthread_sigmask() or sigprocmask(). If the latter works but the former doesn't, I would have guessed you'd like to use the latter <wink>. > Did I miss any other options? > > BTW, does anyone know if Python is triggering the FIXME in Cygwin's > pthread_sigmask()? Sorry, no idea. > Or, should I look elsewhere? Ditto.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4