From owner-freebsd-hackers Thu Jan 31 16:36: 1 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from avocet.prod.itd.earthlink.net (avocet.mail.pas.earthlink.net [207.217.120.50]) by hub.freebsd.org (Postfix) with ESMTP id 2F00C37B404 for ; Thu, 31 Jan 2002 16:35:57 -0800 (PST) Received: from pool0167.cvx40-bradley.dialup.earthlink.net ([216.244.42.167] helo=mindspring.com) by avocet.prod.itd.earthlink.net with esmtp (Exim 3.33 #1) id 16WRgI-00002a-00; Thu, 31 Jan 2002 16:35:55 -0800 Message-ID: <3C59E2E6.6C19BED3@mindspring.com> Date: Thu, 31 Jan 2002 16:35:50 -0800 From: Terry Lambert X-Mailer: Mozilla 4.7 [en]C-CCK-MCD {Sony} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Rahul Siddharthan Cc: hackers@freebsd.org Subject: Re: Again Softupdates on 4.5 References: <20020131165803.C6390@lpt.ens.fr> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Rahul Siddharthan wrote: > After that I turned write caching off. I had one more panic, but no > disasters -- the automatic fsck worked. Maybe it's just me but I > don't really notice a slowing down with write caching off (softupdates > is still on). Write caching permits the disk to reorder writes, as it sees fit. Forcing a disk cache cycle at a barrier point when doing the graph dependency resolution fixes the problem (e.g. at the end of each soft updates update daemon write cycle, which can be done by adding a "barrier" pseudo-op into the write queue list -- the "barrier" isn't passed until the disk acknowledges that the cached writes have been fully committed). Effectively, this is the same thing as the degenerate case where the writes are delayed and ordered (the USL/Novell DOW patent), in the case that tagged queueing isn't available on the disk. This makes it risky (it's basically the same thing that ReiserFS does, which I firmly believe is covered by the patent; I examined the technology in 1994, during the patent filing, at Novell/USG). This won't work for a lot of "modern" ATA disks, because they lie when you tell them to write their cache (I guess dishonesty makes them "more modern" than hardware that tells the truth, and does what you tell it to do). There's a "known rogues" list of ATA write flush liars, but I don't have it. I think Soren mentioned it one time. -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message