From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Locking temporary files? Date: Sun, 04 Aug 2013 19:05:48 +0300 Message-ID: <8361vlxwyr.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1375632364 20677 80.91.229.3 (4 Aug 2013 16:06:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 4 Aug 2013 16:06:04 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Aug 04 18:06:06 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1V60on-0007gC-Cd for ged-emacs-devel@m.gmane.org; Sun, 04 Aug 2013 18:06:05 +0200 Original-Received: from localhost ([::1]:32787 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V60om-0007EV-UZ for ged-emacs-devel@m.gmane.org; Sun, 04 Aug 2013 12:06:04 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56467) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V60oc-00079o-QY for emacs-devel@gnu.org; Sun, 04 Aug 2013 12:06:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V60oV-0004bB-FZ for emacs-devel@gnu.org; Sun, 04 Aug 2013 12:05:54 -0400 Original-Received: from mtaout20.012.net.il ([80.179.55.166]:65516) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V60oV-0004ao-7U for emacs-devel@gnu.org; Sun, 04 Aug 2013 12:05:47 -0400 Original-Received: from conversion-daemon.a-mtaout20.012.net.il by a-mtaout20.012.net.il (HyperSendmail v2007.08) id <0MR000100KP28Q00@a-mtaout20.012.net.il> for emacs-devel@gnu.org; Sun, 04 Aug 2013 19:05:45 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout20.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MR0001OCKPJ8A00@a-mtaout20.012.net.il> for emacs-devel@gnu.org; Sun, 04 Aug 2013 19:05:43 +0300 (IDT) X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 80.179.55.166 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:162409 Archived-At: I discovered that when we invoke call-process-region, we lock the temporary file used as input for the sub-process. The lock happens inside write-region. Here's the relevant portion of a backtrace showing the call sequence: #0 mkostemp ( template=0x82aa00 "c:/DOCUME~1/USERNAME/LOCALS~1/Temp/.#-emacsXXXXXX", flags=32896) at w32.c:3448 #1 0x01110deb in create_lock_file ( lfname=0x82cb50 "c:/DOCUME~1/USERNAME/LOCALS~1/Temp/.#ema02336", lock_info_str=0x82aae0 "eliz@HOME-C4E4A596F7.1840:1375370886", force=false) at filelock.c:417 #2 0x01111027 in lock_file_1 ( lfname=0x82cb50 "c:/DOCUME~1/USERNAME/LOCALS~1/Temp/.#ema02336", force=false) at filelock.c:482 #3 0x01111598 in lock_if_free (clasher=0x82cbe0, lfname=0x82cb50 "c:/DOCUME~1/USERNAME/LOCALS~1/Temp/.#ema02336") at filelock.c:636 #4 0x01111813 in lock_file (fn=270669553) at filelock.c:720 #5 0x01127532 in Fwrite_region (start=4, end=3424, filename=270669553, append=53446682, visit=53501050, lockname=270669553, mustbenew=53446682) at fileio.c:4875 #6 0x011cba54 in create_temp_file (nargs=8, args=0x82f584) at callproc.c:1062 #7 0x011cbb30 in Fcall_process_region (nargs=8, args=0x82f584) at callproc.c:1119 Locking temporary files sounds redundant, doesn't it?