Booting from ZFS RaidZ

Doug Rabson dfr at
Fri May 29 08:29:41 UTC 2009

On 27 May 2009, at 20:55, Paul Wootton wrote:

> Doug Rabson wrote:
>> On 27 May 2009, at 16:38, Paul Wootton wrote:
>>> Hi,
>>> With the recent changes allowing RaidZ boot, I thought I would  
>>> finally drop my mirror pack and go RaidZ.
>>> The only problem I now have is
>>> demophon# zpool set bootfs=DemoPool/root DemoPool
>>> cannot set property for 'DemoPool': operation not supported on  
>>> this type of pool
>>> Is this still a work in progress, or do I have something a-miss?
>>> I am using current as of today
>>> "demophon# uname -a
>>> FreeBSD demophon 8.0-CURRENT FreeBSD 8.0-CURRENT #17: Wed May 27  
>>> 13:18:06 BST 2009     paul at demophon:/usr/obj/usr/src/sys/DEMOPHON   
>>> amd64"
>> This is a limitation which I will remove as soon as I have a little  
>> time to work on it. Basically, Solaris can only boot from simple  
>> structures such as mirrors and collections of mirrors. The code  
>> enforces this by stopping you from setting the bootfs property if  
>> the pool configuration is too complex for the Solaris boot code. I  
>> will simply remove this limitation for FreeBSD since we can now  
>> boot from any pool configuration.
>> In the meantime, you can still boot if you put your root filesystem  
>> files in the root of the pool. Not ideal I know but I'll try to fix  
>> it properly soon.
> This does seem to work correctly for me as I get a BTX crash (see  
> below)
> Verifying DMI Poll Data .............
> \
> FreeBSD/i386 boot
> Default:DemoPool:/boot/kernel/kernel
> boot:
> |
> int=00000000  err=00000000  elf=00010083  eip=00192adf
> eax=00192e02a  ebx=df5610ed  ecx=d485b986  edx=00000000
> esi=00000040  edi=000935d0  ebp=0009339c  esp=00000000
> cs=0008 ds=0010 es=0010 fs-0010 gs=0010 ss=0010
> cs:eip=c5 e4 00 66 0f 73 dc 02-ff e4 b8 8d 8d bc f2 2a
> e9 ba e6 f4 2a 8a d8 24-df 86 c4 be 00 2b e9 8b
> ss:esp=16 e8 00 f0 16 e8 00 f0-c3 e2 00 f0 16 e8 00 f0
> 16 e8 00 f0 54 ff 00 f0-b8 6e 00 f0 16 e8 00 f0
> BTX halted

How frustrating. Can you give me some idea on your ZFS pool  
configuration. Also, if you can dig out the symbol table for /boot/ 
loader (it should be lurking somewhere in your /usr/obj tree as  
loader.sym), it would be interesting to see where it crashed (i.e.  
whats the closest symbol to the value of EIP above).

More information about the freebsd-current mailing list