atom feed4 messages in org.freebsd.freebsd-fsRe: kern/166566: [zfs] zfs split rend...
FromSent OnAttachments
lini...@FreeBSD.orgApr 1, 2012 11:12 pm 
Andriy GaponApr 2, 2012 12:19 am 
George HartzellApr 2, 2012 8:59 am 
Andriy GaponApr 5, 2012 1:19 am 
Subject:Re: kern/166566: [zfs] zfs split renders 2 disk (MBR based) mirror unbootable
From:George Hartzell (hart@alerce.com)
Date:Apr 2, 2012 8:59:44 am
List:org.freebsd.freebsd-fs

The following reply was made to PR kern/166566; it has been noted by GNATS.

From: George Hartzell <hart@alerce.com> To: Andriy Gapon <av@FreeBSD.org> Cc: bug-@FreeBSD.org, hart@alerce.com Subject: Re: kern/166566: [zfs] zfs split renders 2 disk (MBR based) mirror unbootable Date: Mon, 2 Apr 2012 08:47:53 -0700

Thanks for following up on this.

Andriy Gapon writes: > > A few things missing from your port: > > 1. "Doesn't boot" is quite a poor description in comparison with > other details that you provided. You should give more detailed > information of the boot failure.

As the kernel is loading it fails to mount the root partition and presents one with the minimal mountroot dialog. Attempting to boot from zfs:zroot or zfs:zsplitroot fails. I remember that a question mark lists various other devices but don't remember the particulars.

> 2. gpart information for ada3

Identical to ada1. Both disks have an MBR with one slice, which has a BSD label with two partitions, a (926GB, type freebsd-zfs) and b (5.5GB, type freebsd-swap).

(delicious)[8:45am]~>>gpart show ada1 => 63 1953525105 ada1 MBR (931G) 63 1953525105 1 freebsd [active] (931G)

(delicious)[8:45am]~>>gpart show ada1s1 => 0 1953525105 ada1s1 BSD (931G) 0 1941962752 1 freebsd-zfs (926G) 1941962752 11562353 2 freebsd-swap (5.5G)

(delicious)[8:46am]~>>gpart show ada3 => 63 1953525105 ada3 MBR (931G) 63 1953525105 1 freebsd [active] (931G)

(delicious)[8:46am]~>>gpart show ada3s1 => 0 1953525105 ada3s1 BSD (931G) 0 1941962752 1 freebsd-zfs (926G) 1941962752 11562353 2 freebsd-swap (5.5G)

Both have boot bits set up like this:

gpart bootcode -b /boot/boot0 adaX dd if=/boot/zfsboot of=/dev/adaXs1 count=1 dd if=/boot/zfsboot of=/dev/adaXs1a skip=1 seek=1024

> 3. You don't say which disk ended up as zroot and as zsplitroot > after the split.

zpool status showed only

zroot ada3s1a

and zpool import showed

zsplitroot ada1s1a

> 4. You don't say which disk is configured as a boot disk in BIOS.

This is a mac pro (tower), so BIOS is kind of a slippery concept. I leave the 'startup disk' set to the (other) OS X disks. On power up I hold down the option key and am presented with a dialog from which I can select any of the bootable devices in the box.

When things are working correctly I can boot from either of the disks in the ZFS mirror and things go well. Now that I've upgraded I can even pull one of the disks before powering up and boot from the other (older zfs bootstrapping stuff used to have a problem with broken mirrors).

After the zfs split I am unable to boot from either disk.

g.