Date: Tue, 15 Sep 2009 16:16:54 +0300 From: Jaakko Heinonen <jh@saunalahti.fi> To: Craig Rodrigues <rodrigc@crodrigues.org> Cc: Mel Flynn <mel.flynn+fbsd.current@mailing.thruhere.net>, freebsd-current@freebsd.org, Pawel Jakub Dawidek <pjd@freebsd.org>, Jeff Blank <jfb@mr-happy.com> Subject: Re: 8.0-BETA4 panic: ffs_sync: rofs mod Message-ID: <20090915131654.GA2369@a91-153-125-115.elisa-laajakaista.fi> In-Reply-To: <20090915040032.GA68823@crodrigues.org> References: <20090908202553.GA1368@mr-happy.com> <200909090902.34055.mel.flynn%2Bfbsd.current@mailing.thruhere.net> <20090910091329.GA2726@a91-153-125-115.elisa-laajakaista.fi> <200909140302.03003.mel.flynn%2Bfbsd.current@mailing.thruhere.net> <20090914173208.GA4273@a91-153-125-115.elisa-laajakaista.fi> <20090915040032.GA68823@crodrigues.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
On 2009-09-15, Craig Rodrigues wrote:
> Instead of using your proposed patch, could you try this patch?
Unfortunately the patch doesn't help. After the command
# mount -o ro,rw /dev/md0 /mnt
active string options for the mount point are ro, noro, fstype, fspath,
from and errmsg. Again it blows on update mount because of the active
"ro" option.
I am also worried about using "noro" instead of "rw". At least zfs seem
to set and test for "rw" option. (Grep for MNTOPT_RW under sys/cddl.)
I have extended ddb(4) "show mount" command to print active string
options to ease debugging. The change is below if someone is interested.
%%%
Index: sys/kern/vfs_subr.c
===================================================================
--- sys/kern/vfs_subr.c (revision 193492)
+++ sys/kern/vfs_subr.c (working copy)
@@ -2762,6 +2762,7 @@
DB_SHOW_COMMAND(mount, db_show_mount)
{
struct mount *mp;
+ struct vfsopt *opt;
struct statfs *sp;
struct vnode *vp;
char buf[512];
@@ -2867,6 +2868,18 @@
}
db_printf(" mnt_kern_flag = %s\n", buf);
+ db_printf(" mnt_opt = ");
+ opt = TAILQ_FIRST(mp->mnt_opt);
+ if (opt != NULL) {
+ db_printf("%s", opt->name);
+ opt = TAILQ_NEXT(opt, link);
+ while (opt != NULL) {
+ db_printf(", %s", opt->name);
+ opt = TAILQ_NEXT(opt, link);
+ }
+ }
+ db_printf("\n");
+
sp = &mp->mnt_stat;
db_printf(" mnt_stat = { version=%u type=%u flags=0x%016jx "
"bsize=%ju iosize=%ju blocks=%ju bfree=%ju bavail=%jd files=%ju "
%%%
--
Jaakko
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090915131654.GA2369>
