Date: Sun, 04 Jul 2010 17:37:12 +0200 From: Dimitry Andric <dimitry@andric.com> To: Daniel O'Connor <doconnor@gsoft.com.au> Cc: FreeBSD Stable <freebsd-stable@freebsd.org> Subject: Re: GEOM/bsdlabel regression in 8.x? Message-ID: <4C30AAA8.7010206@andric.com> In-Reply-To: <791316F7-6E16-47D7-9B6C-2881FAAC78AA@gsoft.com.au> References: <BC67251C-1621-4291-B0C1-A28CC404E417@gsoft.com.au> <4C309359.8000502@andric.com> <791316F7-6E16-47D7-9B6C-2881FAAC78AA@gsoft.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2010-07-04 16:26, Daniel O'Connor wrote: >> First unmount /dev/md0s1a, or the device /dev/md0s1 will be in use, and >> opening it for read/write (as bsdlabel probably does) will fail. >> >> Alternatively, you can turn on the "footshooting" debug flag in geom: ... > It doesn't make a difference if you set that flag or not. > > (The fact you need to set debugflags to modify the MBR is a separate bug anyway IMO) On my 8-stable box, I have tried this sequence of commands: truncate -s 10m /tmp/test mdconfig -a -t vnode -f /tmp/test mdconfig -a -t vnode -f /tmp/test fdisk -BI /dev/md0 bsdlabel -w /dev/md0s1 bsdlabel -e /dev/md0s1 newfs /dev/md0s1a mkdir /mnt/test mount /dev/md0s1a /mnt/test bsdlabel -e /dev/md0s1 The last one indeed fails, because the device is in use. This is expected, but the error message is very misleading, and should be improved. The real 'bug' (although there will probably be loads of bikesheds about it) is probably that if you *do* unmount the filesystem, bsdlabel still fails: umount /mnt/test bsdlabel -e /dev/md0s1 [class not found yada yada] Apparently, unmounting does not properly 'release' whatever underlying geom device is preventing read/write access. However, if you then set the footshooting flag: sysctl -w kern.geom.debugflags=0x10 bsdlabel -e /dev/md0s1 bsdlabel can write without problems, at least on my box. Stranger even, if you subsequently turn off the footshooting flag, it *still* can write to the label. That is, unless you mount and unmount the filesystem, after which is again, sort of 'locked' against writing. All highly confusing. :)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C30AAA8.7010206>