From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Linas Vepstas Newsgroups: gmane.lisp.guile.bugs Subject: [bug #24867] `define' should be thread-safe Date: Tue, 23 Dec 2008 18:28:47 +0000 Message-ID: <20081223-182846.sv71519.10756@savannah.gnu.org> References: <20081118-101829.sv15145.66129@savannah.gnu.org> <20081118-132731.sv15145.42938@savannah.gnu.org> <20081223-023612.sv71519.31021@savannah.gnu.org> <20081223-025008.sv71519.28260@savannah.gnu.org> <20081223-030642.sv71519.76086@savannah.gnu.org> <20081223-152123.sv15145.27370@savannah.gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain;charset=UTF-8 X-Trace: ger.gmane.org 1230057002 3293 80.91.229.12 (23 Dec 2008 18:30:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 23 Dec 2008 18:30:02 +0000 (UTC) To: Andy Wingo , Ludovic =?UTF-8?B?Q291cnTDqHM=?= , Linas Vepstas , bug-guile@gnu.org Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Tue Dec 23 19:31:05 2008 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1LFC23-0003mF-Ej for guile-bugs@m.gmane.org; Tue, 23 Dec 2008 19:31:04 +0100 Original-Received: from localhost ([127.0.0.1]:56642 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LFC0q-0002HI-Nb for guile-bugs@m.gmane.org; Tue, 23 Dec 2008 13:29:48 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LFBzy-0001gE-SS for bug-guile@gnu.org; Tue, 23 Dec 2008 13:28:54 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LFBzx-0001eh-6u for bug-guile@gnu.org; Tue, 23 Dec 2008 13:28:54 -0500 Original-Received: from [199.232.76.173] (port=41083 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LFBzw-0001eU-SV for bug-guile@gnu.org; Tue, 23 Dec 2008 13:28:52 -0500 Original-Received: from savannah.gnu.org ([199.232.41.3]:42731 helo=sv.gnu.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1LFBzs-00007h-NE; Tue, 23 Dec 2008 13:28:48 -0500 Original-Received: from [10.0.0.103] (helo=savannah.gnu.org) by sv.gnu.org with esmtp (Exim 4.63) (envelope-from ) id 1LFBzr-0005Lm-Bb; Tue, 23 Dec 2008 18:28:47 +0000 Original-Received: from www-data by savannah.gnu.org with local (Exim 4.63) (envelope-from ) id 1LFBzr-0005Li-2j; Tue, 23 Dec 2008 18:28:47 +0000 X-Savane-Server: savannah.gnu.org:443 [199.232.41.3] X-Savane-Project: guile X-Savane-Tracker: bugs X-Savane-Item-ID: 24867 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.0.5) Gecko/2008121621 Ubuntu/8.04 (hardy) Firefox/3.0.5 X-Apparently-From: 67.100.217.179 (Savane authenticated user linas) In-Reply-To: <20081223-152123.sv15145.27370@savannah.gnu.org> X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:4149 Archived-At: Follow-up Comment #5, bug #24867 (project guile): 1) Easier said than done, because: 1a) the mutex needs to be recursive, since sym2var evaluates code in boot9.scm which can cause sym2var to run again. The core problem is that the mechanism for specifying recursive mutexes seems to be somewhat OS-dependent (and possibly some OS'es don't support recursive mutexes??) and so a portability wrapper might be needed. :-( 1b) There's still a strange deadlock somehow; am debugging. 3) Fine-grained usually means speedy. *if* there was some per-module C struct, then the mutex could be put in there. (I don't know of any, but I don't know guile internals). The alternative would be somehow grabbing a lock in the boot9.scm code, but I don't see how, without making some symbol lookup (i.e. race). _______________________________________________________ Reply to this item at: _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/