From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: master fails to build on FreeBSD when ACL support is on Date: Mon, 22 Jan 2018 09:11:41 -0500 Message-ID: References: <86o9lua0yx.fsf@phe.ftfl.ca> <834lnly8ht.fsf@gnu.org> <86vafy20sj.fsf@phe.ftfl.ca> <83o9lpuct5.fsf@gnu.org> <83lggtu1qn.fsf@gnu.org> <9dd64b10-78ce-c561-8c51-9e15b11e102c@cs.ucla.edu> <83bmhpt12i.fsf@gnu.org> <867escw93p.fsf@phe.ftfl.ca> <86vafwumqp.fsf@phe.ftfl.ca> <025ce2fd-a69a-12da-ce5b-c894d5636789@cs.ucla.edu> <4bdd53c4-5a79-e4e5-0a8d-d1d0d65aee25@cs.ucla.edu> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1516630229 21766 195.159.176.226 (22 Jan 2018 14:10:29 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 22 Jan 2018 14:10:29 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jan 22 15:10:25 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1edcnZ-0004Yf-QG for ged-emacs-devel@m.gmane.org; Mon, 22 Jan 2018 15:10:09 +0100 Original-Received: from localhost ([::1]:44357 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1edcpa-0002TF-1Y for ged-emacs-devel@m.gmane.org; Mon, 22 Jan 2018 09:12:14 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60965) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1edcpS-0002Sz-KB for emacs-devel@gnu.org; Mon, 22 Jan 2018 09:12:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1edcpO-0006PI-0k for emacs-devel@gnu.org; Mon, 22 Jan 2018 09:12:06 -0500 Original-Received: from [195.159.176.226] (port=49215 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1edcpN-0006Og-Qf for emacs-devel@gnu.org; Mon, 22 Jan 2018 09:12:01 -0500 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1edcnB-00034I-F0 for emacs-devel@gnu.org; Mon, 22 Jan 2018 15:09:45 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 20 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:4W533On4HurofH/xrwP1PSNY5bA= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:222139 Archived-At: > I suspect rename-file is trying to mimic 'mv' here. With GNU 'mv', the > destination can temporarily be in a partially-written state when file system > boundaries are being crossed. This behavior is allowed by POSIX. Although > the behavior you describe does have advantages, it is not allowed by POSIX > for 'mv' and it can exhaust the destination file system even when there's > room for the final result. Hmm... regarding the problem of transient space usage, we could simply remove the target, then copy to the temp file, then move to target. We can choose one of the downsides: - a transient state where the target is missing - a transient state where the target is partially written - a transient state where we use more disk space Not sure why POSIX chose the middle downside. I personally much prefer the third one. Stefan