Date: Wed, 10 Dec 2008 07:35:37 -0600 From: Josh Paetzel <jpaetzel@FreeBSD.org> To: Andrew MacIntyre <andymac@bullseye.apana.org.au> Cc: freebsd-python@FreeBSD.org Subject: Re: A FreeBSD specific patch to python 2.5.2 Message-ID: <493FC5A9.9020308@FreeBSD.org> In-Reply-To: <493FA37E.2050502@bullseye.andymac.org> References: <493ECB1E.2050709@FreeBSD.org> <493FA37E.2050502@bullseye.andymac.org>
next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Andrew MacIntyre wrote: > Josh Paetzel wrote: > >> I work in a fairly python-centric environment, we use FreeBSD for all of >> our production machines. >> >> Recently we have started using the following patch to python 2.5.2 in >> production, and it's solved some issues we've had with regards to >> python, FreeBSD, threads, and signals. >> >> I've been contemplating whether it should be included in the FreeBSD >> port tree or not, and if it's included whether it should be optional, so >> on and so forth. >> >> Here's the patch >> >> - --- Python/thread_pthread.h.orig 2006-06-13 15:04:24.000000000 >> +0000 >> +++ Python/thread_pthread.h 2008-11-11 07:20:33.000000000 +0000 >> @@ -149,6 +149,7 @@ >> { >> pthread_t th; >> int status; >> + sigset_t set, oset; >> #if defined(THREAD_STACK_SIZE) || >> defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) >> pthread_attr_t attrs; >> #endif >> @@ -178,6 +179,8 @@ >> pthread_attr_setscope(&attrs, PTHREAD_SCOPE_SYSTEM); >> #endif >> >> + sigfillset(&set); >> + SET_THREAD_SIGMASK(SIG_BLOCK, &set, &oset); >> status = pthread_create(&th, >> #if defined(THREAD_STACK_SIZE) || >> defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) >> &attrs, >> @@ -187,7 +190,7 @@ >> (void* (*)(void *))func, >> (void *)arg >> ); >> - - >> + SET_THREAD_SIGMASK(SIG_SETMASK, &oset, NULL); >> #if defined(THREAD_STACK_SIZE) || >> defined(PTHREAD_SYSTEM_SCHED_SUPPORTED) >> pthread_attr_destroy(&attrs); >> #endif > > Which versions of FreeBSD are you using this on? There are several > FreeBSD thread related issues in the Python bug tracker and it would be > useful to see if they can be squashed for the prospective 2.5.3 and 2.6.1 > releases... > 6.3-R and 6.4-R - -- Thanks, Josh Paetzel PGP: 8A48 EF36 5E9F 4EDA 5ABC 11B4 26F9 01F1 27AF AECB -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.8 (Darwin) iEYEARECAAYFAkk/xakACgkQJvkB8SevrssZJQCfdPOCfOoWmKVRSDtlbAI/Xk1M 7fUAmgJD847Y5Ue+6NTwbVhuKkHtstdq =0OD6 -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?493FC5A9.9020308>