From owner-freebsd-stable Thu Feb 7 13:23:35 2002 Delivered-To: freebsd-stable@freebsd.org Received: from krusty.e-technik.uni-dortmund.de (krusty.E-Technik.Uni-Dortmund.DE [129.217.163.1]) by hub.freebsd.org (Postfix) with ESMTP id 83B8B37B427 for ; Thu, 7 Feb 2002 13:23:16 -0800 (PST) Received: from merlin.emma.line.org (localhost [127.0.0.1]) by krusty.e-technik.uni-dortmund.de (Postfix) with ESMTP id 6F0DCA3829 for ; Thu, 7 Feb 2002 22:23:14 +0100 (CET) Received: by merlin.emma.line.org (Postfix, from userid 500) id DF51E1EB37; Thu, 7 Feb 2002 22:23:11 +0100 (CET) X-Draft-From: ("nnml+private:freebsd-stab" "") To: freebsd-stable@freebsd.org Subject: softupdates and tagged command queueing From: Matthias Andree Date: Thu, 07 Feb 2002 22:23:11 +0100 Message-ID: Lines: 35 User-Agent: Gnus/5.090006 (Oort Gnus v0.06) Emacs/21.1 (i686-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Hello, I have -- some time ago -- skimmed over the Usenix papers on softupdates. Softupdates go lengths to guarantee file system consistency, possibly mapping a single in-core updates to several sequential on-disk updates. We all know that enabled write caches in drives can reorder writes, so I'm usually disabling all the write caches with camcontrol for SCSI or hw.ata.wc=0 in /etc/loader.conf for ATA drives to not have my file systems hosed when the power fails or some other nasty things happen. (Luckily, power outages are VERY rare in big cities in Germany, and so nothing bad has happened to my file systems so far.) However, what impact does tagged command queueing (which is supported for virtually all SCSI drives and IBM DPTA, DTLA and IC35L... ATA drives) have on the ordering requirements that softupdates impose? I think drives can reorder writes with tagged queueing, that's the whole idea about the tags in this queue. How does the kernel/file system avoid that a write reordering through tagged command queueing undermines the consistency guarantees that ffs+softupdates makes? Does it do anything about this at all or does the kernel just assume that a disk drive does not reorder writes? Any hints appreciated (I can read C if it's not too obfuscated, so pointers into the kernel source are OK). Thanks a lot in advance. -- Matthias Andree "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." Benjamin Franklin To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message