From owner-freebsd-questions@freebsd.org Tue Jun 15 19:51:26 2021 Return-Path: Delivered-To: freebsd-questions@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 36D11651AFC for ; Tue, 15 Jun 2021 19:51:26 +0000 (UTC) (envelope-from kh@panix.com) Received: from mailbackend.panix.com (mailbackend.panix.com [166.84.1.89]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4G4Jq15ZJNz3CWk for ; Tue, 15 Jun 2021 19:51:25 +0000 (UTC) (envelope-from kh@panix.com) Received: from rain.home (pool-96-230-243-2.bstnma.fios.verizon.net [96.230.243.2]) by mailbackend.panix.com (Postfix) with ESMTPSA id 4G4Jq11JGHz3nYQ for ; Tue, 15 Jun 2021 15:51:25 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=panix.com; s=panix; t=1623786685; bh=Tbh9QvR96WOpjfi+So+EUpS4xIskS3n1Q91oQgSzg58=; h=Subject:To:References:From:Date:In-Reply-To; b=bYrXgmHNOMdrQdJ1wY3B2z2gVCuu1X07phSVJjtE9vmjmsvLnZBUgdwSSaMUnQtnk v/4O01OhFofg+k9E4EGA6Xlcm/SLjHSSvevrKDOcke6so7O9IooBVjDP89aJ91Z8yv Jpeo3wJ3rP7AiaHVfdEWrdP/TW23ZeqHWIaJQFQY= Subject: Re: Is a successful call to write(2) atomic? To: freebsd-questions@freebsd.org References: <22440.1623740785@segfault.tristatelogic.com> <44e15917-0c92-08f2-462e-a1b3705f9afb@panix.com> From: Kurt Hackenberg Message-ID: <034b6d41-218a-0782-052e-c1c74a007897@panix.com> Date: Tue, 15 Jun 2021 15:51:22 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4G4Jq15ZJNz3CWk X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=panix.com header.s=panix header.b=bYrXgmHN; dmarc=none; spf=pass (mx1.freebsd.org: domain of kh@panix.com designates 166.84.1.89 as permitted sender) smtp.mailfrom=kh@panix.com X-Spamd-Result: default: False [-4.20 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; RWL_MAILSPIKE_GOOD(0.00)[166.84.1.89:from]; R_SPF_ALLOW(-0.20)[+ip4:166.84.0.0/16]; TO_DN_NONE(0.00)[]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; DKIM_TRACE(0.00)[panix.com:+]; RCVD_IN_DNSWL_MED(-0.20)[166.84.1.89:from]; NEURAL_HAM_SHORT(-1.00)[-1.000]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; SUBJECT_ENDS_QUESTION(1.00)[]; ASN(0.00)[asn:2033, ipnet:166.84.0.0/16, country:US]; MID_RHS_MATCH_FROM(0.00)[]; RECEIVED_SPAMHAUS_PBL(0.00)[96.230.243.2:received]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; R_DKIM_ALLOW(-0.20)[panix.com:s=panix]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-questions@freebsd.org]; DMARC_NA(0.00)[panix.com]; RCPT_COUNT_ONE(0.00)[1]; DWL_DNSWL_LOW(-1.00)[panix.com:dkim]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; MAILMAN_DEST(0.00)[freebsd-questions] X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2021 19:51:26 -0000 On 2021/06/15 15:16, Michael Schuster wrote: > Let's take a step back: an atomic write() either writes everything or > nothing - and that's all. There's nothing in that claim that says > "everything must be in a contiguous block", nor, that all the data must be > written in a single "operation" by the underlying system. > > So after consideration I don't think the observed behaviour is violating > the claim that write() is atomic - I welcome correction, of course :-) You're just talking about the exact meaning of that word "atomic". Ronald used it to mean indivisible, as atoms were once thought to be; you advocate a slightly different meaning. That's a digression. Ronald's problem is clear, no matter what word we use. Paul and I know the problem and have suggested two well-known solutions.