From owner-freebsd-current@FreeBSD.ORG Mon Sep 14 01:02:06 2009 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 53CAD1065694; Mon, 14 Sep 2009 01:02:06 +0000 (UTC) (envelope-from mel.flynn+fbsd.current@mailing.thruhere.net) Received: from mailhub.rachie.is-a-geek.net (rachie.is-a-geek.net [66.230.99.27]) by mx1.freebsd.org (Postfix) with ESMTP id 1E8108FC1D; Mon, 14 Sep 2009 01:02:05 +0000 (UTC) Received: from smoochies.rachie.is-a-geek.net (mailhub.rachie.is-a-geek.net [192.168.2.11]) by mailhub.rachie.is-a-geek.net (Postfix) with ESMTP id 1A7377E818; Sun, 13 Sep 2009 17:02:18 -0800 (AKDT) From: Mel Flynn To: freebsd-current@freebsd.org Date: Mon, 14 Sep 2009 03:02:02 +0200 User-Agent: KMail/1.12.1 (FreeBSD/8.0-BETA4; KDE/4.3.1; i386; ; ) References: <20090908202553.GA1368@mr-happy.com> <200909090902.34055.mel.flynn+fbsd.current@mailing.thruhere.net> <20090910091329.GA2726@a91-153-125-115.elisa-laajakaista.fi> In-Reply-To: <20090910091329.GA2726@a91-153-125-115.elisa-laajakaista.fi> MIME-Version: 1.0 Content-Type: Text/Plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <200909140302.03003.mel.flynn+fbsd.current@mailing.thruhere.net> Cc: Jaakko Heinonen , Pawel Jakub Dawidek , Jeff Blank Subject: Re: 8.0-BETA4 panic: ffs_sync: rofs mod 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, 14 Sep 2009 01:02:06 -0000 On Thursday 10 September 2009 11:13:29 Jaakko Heinonen wrote: > On 2009-09-09, Mel Flynn wrote: > > This problem has also been seen on -questions [1] and I forgot to follow > > up after time issues. According to the poster it's easy to reproduce: > > - have a mountpoint in /etc/fstab with ro options > > - unmount the mountpoint > > - remount using -o rw > > This has been also reported as PR kern/133614. I have tried to reproduce > the problem earlier but I didn't succeed until now. Here's how to > reproduce it: > > 1. Have mountd(8) running > 2. # mdconfig -a -t vnode -f ufsimg > 3. # mount -o ro,rw /dev/md0 /mnt > 4. # touch /mnt/foo && sync > > This is what's going on: > > Initial nmount() is done with "ro" and "rw" options. The mount point > will have "ro", "rw" and "noro" string mount options after nmount(). > MNT_RDONLY flag is not set. > > Then mountd(8) calls nmount() with "update" and "export" string options. > This results FFS code to re-mount the file system as read-only because > the "ro" string option is active for the mount point. ffs_mount() sets > MNT_RDONLY and FFS fs_ronly flags. MNT_RDONLY gets later cleared in > vfs_domount() because vfs_export() fails with ENOENT but the fs_ronly > flag stays enabled. > > The most obvious problem seems to be that both "ro" and "rw" options are > allowed to enter to mount point options concurrently. Why does mountd(8) call nmount with update? As I read the above, any command line overrides done through umount/mount will be negated by having mountd running. That's a bit surprising. -- Mel