Date: Wed, 21 Nov 2007 07:50:03 GMT From: Bruce Evans <brde@optusnet.com.au> To: freebsd-bugs@FreeBSD.org Subject: Re: misc/118160: unable to mount / rw while booting 7.0-BETA3 Message-ID: <200711210750.lAL7o31M073692@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR misc/118160; it has been noted by GNATS.
From: Bruce Evans <brde@optusnet.com.au>
To: Bruce Evans <brde@optusnet.com.au>
Cc: Yuri <yuri@tsoft.com>, freebsd-gnats-submit@freebsd.org,
freebsd-bugs@freebsd.org
Subject: Re: misc/118160: unable to mount / rw while booting 7.0-BETA3
Date: Wed, 21 Nov 2007 18:42:27 +1100 (EST)
On Wed, 21 Nov 2007, Bruce Evans wrote:
> I can now see a plausible way to reach the bad state:
> - after booting, the root device is mounted on / r/o with no problems
> - mistype a mount command or have $true generate a wrong mount command,
> so that the root device is mounted somewhere else (I don't know how
> it can be on "", but it could be on " " or on any valid pathname).
> If you preemptively mount it r/w, then this other mount will fail
> -- look in the logs for messages about this.
> - now try to remount / r/w normally. This will fail due to the r/o mount
> not on /.
> - if there is only 1 extra r/o mount of /, then the r/w mount should work
> after unmounting the extra. If there are several extras, then unmounting
> them in a certain order should give the bufobj panic.
The bufobj panic actually happens in the only possible order for trying to
fix the simulated problem: after booting with -s:
# mount -o ro /dev/ad0s2a /mnt # create extra mount (ad0s2a is root dev)
# # like a runaway script might
# umount /mnt # get rid of the extra mount
# fsck -p /
--- panic
and
# mount /dev/ad0s2a /mnt # I forgot the ro
--- this succeeds due to the hack that lets fsck succeed, but it shouldn't
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200711210750.lAL7o31M073692>
