From owner-freebsd-python@FreeBSD.ORG Mon Jul 4 11:07:09 2011 Return-Path: Delivered-To: freebsd-python@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 33B931065678 for ; Mon, 4 Jul 2011 11:07:09 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 07DAF8FC20 for ; Mon, 4 Jul 2011 11:07:09 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p64B78h6040530 for ; Mon, 4 Jul 2011 11:07:08 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p64B78M6040528 for freebsd-python@FreeBSD.org; Mon, 4 Jul 2011 11:07:08 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 4 Jul 2011 11:07:08 GMT Message-Id: <201107041107.p64B78M6040528@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-python@FreeBSD.org Cc: Subject: Current problem reports assigned to freebsd-python@FreeBSD.org X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jul 2011 11:07:09 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o ports/156811 python lang/python32 has lower priority then lang/python31 o ports/156759 python [patch] lang/python: kevent does not accept KQ_NOTE_EX o ports/156425 python lang/python26: Needs to include -L/usr/local/lib/pth i o ports/156076 python [patch] databases/py-sqlite3: Undefined symbol "sqlite o ports/155970 python [PATCH] lang/python: speed up upgrade-site-packages o ports/155936 python lang/python27 Pthread: previous declaration of ... o ports/155526 python [PATCH] devel/py-elementtree: ignore if python >= 2.5 o ports/155099 python lang/python*: Not handled "nis_failed.so" file by pyth o ports/154795 python [PATCH] Mk/bsd.python.mk: style changes o ports/154209 python [PATCH] lang/python: Install symlink for ptags o ports/153952 python lang/python26 + pth fails to reconfigure cflags to inc o ports/153167 python Problem with signals, threads, and subprocesses in lan o ports/152886 python databases/py-bsddb fails to build with databases/db51 o ports/152224 python [patch] fix installed permissions for lang/python27 o ports/151534 python lang/python26 + WITH_PTH doesn't install correctly f ports/150184 python cannot install ports/math/py-numpy o ports/149167 python lang/python26 fails to build _ctypes on Sheevaplug (AR o ports/148406 python [PATCH] lang/python26: fix build backage without threa o ports/147291 python lang/python* doesn't compile nis.so when WITHOUT_NIS s o ports/146957 python Mk/bsd.python.mk: PYTHONOPTIMIZE=1 in environ(7) break o ports/146823 python [patch] lang/python26: knob to build _ctypes module ag o ports/146644 python lang/python26: WITH_PTH option breaks most ports depen o ports/140968 python x11-toolkits/py-tkinter(devel/pth): py26-tkinter-2.6.4 o ports/136917 python [patch] lang/python26: gettext detection o ports/133081 python [bsd.python.mk] PYEASYINSTALL_ARCHDEP=yes makes broken o ports/118301 python [patch] devel/py-setuptools easy-install.pth contents o ports/115940 python Missed one file in lang/python25 if NO_NIS defined 27 problems total. From owner-freebsd-python@FreeBSD.ORG Tue Jul 5 09:20:43 2011 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 10C2C106566B; Tue, 5 Jul 2011 09:20:43 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id DD0E38FC18; Tue, 5 Jul 2011 09:20:42 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p659KgEZ002287; Tue, 5 Jul 2011 09:20:42 GMT (envelope-from edwin@freefall.freebsd.org) Received: (from edwin@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p659Kgoc002277; Tue, 5 Jul 2011 09:20:42 GMT (envelope-from edwin) Date: Tue, 5 Jul 2011 09:20:42 GMT Message-Id: <201107050920.p659Kgoc002277@freefall.freebsd.org> To: edwin@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org, freebsd-python@FreeBSD.org From: edwin@FreeBSD.org Cc: Subject: Re: ports/158662: [PATCH] Mk/bsd.python.mk: multiple changes X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jul 2011 09:20:43 -0000 Synopsis: [PATCH] Mk/bsd.python.mk: multiple changes Responsible-Changed-From-To: freebsd-ports-bugs->freebsd-python Responsible-Changed-By: edwin Responsible-Changed-When: Tue Jul 5 09:20:42 UTC 2011 Responsible-Changed-Why: bsd.python.mk is freebsd-python territory (via the GNATS Auto Assign Tool) http://www.freebsd.org/cgi/query-pr.cgi?pr=158662 From owner-freebsd-python@FreeBSD.ORG Tue Jul 5 12:37:27 2011 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 75BE0106564A; Tue, 5 Jul 2011 12:37:27 +0000 (UTC) (envelope-from sunpoet@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 4ECBC8FC08; Tue, 5 Jul 2011 12:37:27 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p65CbR5q093224; Tue, 5 Jul 2011 12:37:27 GMT (envelope-from sunpoet@freefall.freebsd.org) Received: (from sunpoet@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p65CbR83093220; Tue, 5 Jul 2011 12:37:27 GMT (envelope-from sunpoet) Date: Tue, 5 Jul 2011 12:37:27 GMT Message-Id: <201107051237.p65CbR83093220@freefall.freebsd.org> To: sunpoet@FreeBSD.org, sunpoet@FreeBSD.org, freebsd-python@FreeBSD.org From: sunpoet@FreeBSD.org Cc: Subject: Re: ports/154795: [PATCH] Mk/bsd.python.mk: style changes X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jul 2011 12:37:27 -0000 Synopsis: [PATCH] Mk/bsd.python.mk: style changes State-Changed-From-To: open->closed State-Changed-By: sunpoet State-Changed-When: Tue Jul 5 12:37:26 UTC 2011 State-Changed-Why: Superseded by ports/158662. http://www.freebsd.org/cgi/query-pr.cgi?pr=154795 From owner-freebsd-python@FreeBSD.ORG Thu Jul 7 12:41:22 2011 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2BAF8106564A; Thu, 7 Jul 2011 12:41:22 +0000 (UTC) (envelope-from sunpoet@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 0494B8FC0C; Thu, 7 Jul 2011 12:41:22 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.4/8.14.4) with ESMTP id p67CfLli021732; Thu, 7 Jul 2011 12:41:21 GMT (envelope-from sunpoet@freefall.freebsd.org) Received: (from sunpoet@localhost) by freefall.freebsd.org (8.14.4/8.14.4/Submit) id p67CfLls021728; Thu, 7 Jul 2011 12:41:21 GMT (envelope-from sunpoet) Date: Thu, 7 Jul 2011 12:41:21 GMT Message-Id: <201107071241.p67CfLls021728@freefall.freebsd.org> To: sunpoet@FreeBSD.org, freebsd-python@FreeBSD.org, portmgr@FreeBSD.org From: sunpoet@FreeBSD.org Cc: Subject: Re: ports/158662: [PATCH] Mk/bsd.python.mk: multiple changes X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jul 2011 12:41:22 -0000 Synopsis: [PATCH] Mk/bsd.python.mk: multiple changes Responsible-Changed-From-To: freebsd-python->portmgr Responsible-Changed-By: sunpoet Responsible-Changed-When: Thu Jul 7 12:41:21 UTC 2011 Responsible-Changed-Why: Request for an -exp run. The patch is also available at http://people.freebsd.org/~sunpoet/bsd.python.mk.patch http://www.freebsd.org/cgi/query-pr.cgi?pr=158662 From owner-freebsd-python@FreeBSD.ORG Sat Jul 9 17:58:39 2011 Return-Path: Delivered-To: freebsd-python@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8DA3E106564A for ; Sat, 9 Jul 2011 17:58:39 +0000 (UTC) (envelope-from nox@jelal.kn-bremen.de) Received: from smtp.kn-bremen.de (gelbbaer.kn-bremen.de [78.46.108.116]) by mx1.freebsd.org (Postfix) with ESMTP id 503F28FC0A for ; Sat, 9 Jul 2011 17:58:39 +0000 (UTC) Received: by smtp.kn-bremen.de (Postfix, from userid 10) id 4815C1E0011C; Sat, 9 Jul 2011 19:43:27 +0200 (CEST) Received: from triton8.kn-bremen.de (noident@localhost [127.0.0.1]) by triton8.kn-bremen.de (8.14.4/8.14.3) with ESMTP id p69Hg2g9097479; Sat, 9 Jul 2011 19:42:02 +0200 (CEST) (envelope-from nox@triton8.kn-bremen.de) Received: (from nox@localhost) by triton8.kn-bremen.de (8.14.4/8.14.3/Submit) id p69Hg1As097478; Sat, 9 Jul 2011 19:42:01 +0200 (CEST) (envelope-from nox) From: Juergen Lock Date: Sat, 9 Jul 2011 19:42:01 +0200 To: freebsd-python@FreeBSD.org Message-ID: <20110709174201.GA96487@triton8.kn-bremen.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Duncan Findlay , Olivier Cochard-Labbe , Benjamin Epitech Subject: Re: ports/153167: Problem with signals, threads, and subprocesses in lang/python X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jul 2011 17:58:39 -0000 Hi! (please Cc me with followups, I'm not subscribed) Has anyone looked at this problem again yet? I found the PR after debugging the same issue in the emulators/gns3 port, I'm not that good at python but maybe the workaround I came up with (patch to gns3's qemuwrapper.py, this is for an updated version of the port that Olivier is working on) still is useful as a starting point, maybe something like it could be added to subprocess.py, or the more portable C equivalent at the appropriate place? (or even generally in exec*()?) --- qemuwrapper/qemuwrapper.py.orig +++ qemuwrapper/qemuwrapper.py @@ -45,6 +45,7 @@ import SocketServer import time import random import pemubin +import ctypes __author__ = 'Thomas Pani and Jeremy Grossmann' @@ -118,6 +119,33 @@ class xEMUInstance(object): def unbase_disk(self): pass + def preexec(self): + # FreeBSD preexec_fn hack to unblock signals in child processes + # to work around the bug in this PR: + # http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/153167 + # inspired by: + # http://stackoverflow.com/questions/3791398/how-to-stop-python-from-propagating-signals-to-subprocesses + + # Get the size of the array used to + # represent the signal mask + SIGSET_NWORDS = 1024 / (8 * ctypes.sizeof(ctypes.c_uint)) + + # Define the sigset_t structure + class SIGSET(ctypes.Structure): + _fields_ = [ + ('val', ctypes.c_uint * SIGSET_NWORDS) + ] + + # Create a new sigset_t to mask out SIGINT + sigs = (ctypes.c_uint * SIGSET_NWORDS)() + mask = SIGSET(sigs) + + SIG_SETMASK = 3 + libc = ctypes.CDLL('libc.so') + + # Unblock all signals + libc.sigprocmask(SIG_SETMASK, ctypes.pointer(mask), 0) + def start(self): command = self._build_command() @@ -125,6 +152,7 @@ class xEMUInstance(object): try: self.process = subprocess.Popen(command, stdin=subprocess.PIPE, + preexec_fn=self.preexec, cwd=self.workdir) except OSError, e: print >> sys.stderr, "Unable to start instance", self.name, "of", self.__class__