From owner-freebsd-current@FreeBSD.ORG Mon Feb 12 04:37:40 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id EF60716A400 for ; Mon, 12 Feb 2007 04:37:40 +0000 (UTC) (envelope-from anderson@freebsd.org) Received: from mh1.centtech.com (moat3.centtech.com [64.129.166.50]) by mx1.freebsd.org (Postfix) with ESMTP id 5C40213C474 for ; Mon, 12 Feb 2007 04:37:40 +0000 (UTC) (envelope-from anderson@freebsd.org) Received: from [192.168.42.21] (andersonbox1.centtech.com [192.168.42.21]) by mh1.centtech.com (8.13.8/8.13.8) with ESMTP id l1C4bbbx074540; Sun, 11 Feb 2007 22:37:38 -0600 (CST) (envelope-from anderson@freebsd.org) Message-ID: <45CFEF10.5050605@freebsd.org> Date: Sun, 11 Feb 2007 22:37:36 -0600 From: Eric Anderson User-Agent: Thunderbird 1.5.0.9 (X11/20070204) MIME-Version: 1.0 To: "Matthew D. Fuller" References: <20070211050825.GA70508@over-yonder.net> In-Reply-To: <20070211050825.GA70508@over-yonder.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV 0.88.4/2553/Sun Feb 11 13:28:47 2007 on mh1.centtech.com X-Virus-Status: Clean X-Spam-Status: No, score=-2.6 required=8.0 tests=BAYES_00 autolearn=ham version=3.1.6 X-Spam-Checker-Version: SpamAssassin 3.1.6 (2006-10-03) on mh1.centtech.com Cc: freebsd-current@freebsd.org Subject: Re: softdep_waitidle: Failed to flush worklist [...] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Feb 2007 04:37:41 -0000 On 02/10/07 23:08, Matthew D. Fuller wrote: > So, I have a lot of my filesystems (like /) mounted read-only, which > means I occasionally have to remount them to change stuff. For a long > time, I had an issue where, if I remounted them too quickly after > making changes that needed to be sync'd, the remount wouldn't fully > sync them and would leave turds lying around the fs requiring a manual > fsck to clean up, even though it would mark the fs clean. That was > rather annoying and scary. > > Last time I updated -CURRENT (~Nov), it stopped doing that; it instead > moved on to much freakier occurances where it would lock the > filesystem mounted (still usable, but stuck). I've mentioned this > once or twice, but today I updated to current -CURRENT, and got a > chance to take my system offline to characterize it. > > This is trivially reproducible, and rather scary. Following is a > script with comments I can use to cause it at will. If you don't like > having a mounted and indestructible filesystem hanging around your > system, don't run it. > > > #!/bin/sh -ex > > # Make file > rm -f /tmp/fs > dd if=/dev/zero of=/tmp/fs bs=1m count=20 > > # Make vnode > mdconfig -a -t vnode -f /tmp/fs -u 10 > > # Make the filesystem > bsdlabel -w md10 auto > newfs -U /dev/md10 Aren't you putting the filesystem on top of the label here? Shouldn't you do something like: newfs -U /dev/md10a instead? > # Mount > mount /dev/md10 /mnt > > # This tree is big enough to trigger it > mtree -deU -f /etc/mtree/BSD.usr.dist -p /mnt >> /dev/null > > # Sync up, just for sport > sync ; sync ; sync > > # Now blow it away > rm -rf /mnt/* > > # Now, if we did this, it would work OK. I THINK this actually failed > # last time, but with a few quick tries it always seems to work here > # now. > #umount /mnt > > # But when I do this... > mount -u -o ro /mnt > > # BOOM. In syslog and on console, I get "softdep_waitidle: Failed to > # flush worklist for 0xc33ac538". The filesystem is still mounted > # r/w. I can't mount it r/o. I can't umount it, or umount -f it. > # Every try just repeats the same softdep message. The sync on reboot > # bitches just the same. I did this to /usr/ports a month or two ago, > # and could still use it just fine up until tonite's reboot, but I > # really wanted to be able to unmount it... > > > Eric