From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Bob Bramwell Newsgroups: gmane.emacs.bugs Subject: QNX subprocess bug Date: Sat, 25 Mar 2006 05:34:04 +0000 (GMT) Organization: Shaw Residential Internet Message-ID: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1143271665 15591 80.91.229.2 (25 Mar 2006 07:27:45 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 25 Mar 2006 07:27:45 +0000 (UTC) Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Mar 25 08:27:44 2006 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1FN3BS-0006Pe-8Z for geb-bug-gnu-emacs@m.gmane.org; Sat, 25 Mar 2006 08:27:38 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FN3BR-0003q6-BG for geb-bug-gnu-emacs@m.gmane.org; Sat, 25 Mar 2006 02:27:37 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1FN1Pn-0003TH-TI for bug-gnu-emacs@gnu.org; Sat, 25 Mar 2006 00:34:19 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1FN1Pm-0003SM-ME for bug-gnu-emacs@gnu.org; Sat, 25 Mar 2006 00:34:19 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1FN1Pm-0003S7-Bz for bug-gnu-emacs@gnu.org; Sat, 25 Mar 2006 00:34:18 -0500 Original-Received: from [193.4.58.12] (helo=horus.isnic.is) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1FN1Ql-0003jR-1y for bug-gnu-emacs@gnu.org; Sat, 25 Mar 2006 00:35:19 -0500 Original-Received: from pd4mo1so.prod.shaw.ca (shawidc-mo1.cg.shawcable.net [24.71.223.10]) by horus.isnic.is (8.12.9p2/8.12.9/isnic) with ESMTP id k2P5YBuC002062 for ; Sat, 25 Mar 2006 05:34:16 GMT (envelope-from news@shaw.ca) Original-Path: 53ab2750!not-for-mail Original-Received: from pd4mr4so.prod.shaw.ca (pd4mr4so-qfe3.prod.shaw.ca [10.0.141.215]) by l-daemon (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0IWO0086B4ST6C00@l-daemon> for gnu-emacs-bug@moderators.isc.org; Fri, 24 Mar 2006 22:34:05 -0700 (MST) Original-Received: from pd2pm1so ([10.0.122.154]) by pd4mr4so.prod.shaw.ca (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0IWO00KZ24STBTF0@pd4mr4so.prod.shaw.ca> for gnu-emacs-bug@moderators.isc.org; Fri, 24 Mar 2006 22:34:05 -0700 (MST) Original-Received: from shaw.ca ([10.0.146.67]) by l-daemon (iPlanet Messaging Server 5.0 Patch 2 (built Dec 14 2000)) with ESMTP id <0IWO000FL4STOX@l-daemon> for gnu-emacs-bug@moderators.isc.org; Fri, 24 Mar 2006 22:34:05 -0700 (MST) Original-Received: by shaw.ca (8.12.8+Sun/8.12.8/Submit) id k2P5Y4RU014981; Fri, 24 Mar 2006 22:34:04 -0700 (MST) Original-X-Trace: pd7tw3no 1143264844 64.59.135.176 (Fri, 24 Mar 2006 22:34:04 MST) Original-To: gnu-emacs-bug@moderators.isc.org Original-X-Complaints-to: abuse@shaw.ca Original-NNTP-posting-date: Fri, 24 Mar 2006 22:34:04 MST X-Accept-Language: en, zh-CN X-Trace-PostClient-IP: 70.73.4.221 Original-Newsgroups: gnu.emacs.bug Original-Lines: 19 Original-NNTP-posting-host: 64.59.135.176 User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.7) Gecko/20041221 X-Mailman-Approved-At: Sat, 25 Mar 2006 02:27:33 -0500 X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:14986 Archived-At: I submitted an article about this a month or so ago but never saw it come around, so my apologies if this is old news to you. The bug is showing up in emacs 21.2.1 on QNX 6.3.0. It appears that process IDs on QNX really occupy 32-bits. Some of them are quite large. This causes a problem in the subprocess package which uses an elisp integer (28 bits + type info - I think) to try to store the PID. An added complication is that there is a cheap-and-cheerful "just stuff this value into this elisp int" macro which (in this case) has the effect of clobbering the type bits, ultimately resulting in what appears to be a garbage collector infinite recursion crash. Obvious this problem could, in principle, arise on any system that uses 32-bit process IDs, and it seems to me rather sloppy programming to use such a shortcut, especially in such comparatively rarely executed code. It looks as though there ought to be some way to rewrite the code with the integer represented as a kind of indirect object, but I don't feel qualified to do this without consulting The Experts. Anyone wish to provide some guidance? I will gladly fix the problem given a few pointers.