panic when loading mirror

Fernan Aguero fernan at iib.unsam.edu.ar
Sat Apr 29 21:19:34 UTC 2006


+----[ Pawel Jakub Dawidek <pjd at FreeBSD.org> (29.Apr.2006 12:02):
|
| On Fri, Apr 28, 2006 at 02:12:26PM -0300, Fernan Aguero wrote:
| +> Hi,
| +> 
| +> I'm playing with gmirror on a box with a pair of spare
| +> slices before installing a production box.
| +> 
| +> The box is running 6.1-RC (i386), and has two identical
| +> disks (ad0, ad2) already sliced and partitioned:
| +> 
| +> ad0:
| +> ad0s1	unused slice
| +> ad0s2	ad0s2b (swap), ad0s2a (/), ad0s2d (/var), ad0s2e (/usr) ...
| +> 
| +> ad2:
| +> ad2s1	unused slice
| +> ad2s2	ad2s2b (swap), ad2s2d (/tmp), ad2s2e (/usr/ports) ...
| +> 
| +> My idea was to use the unused slices (identical in size) to
| +> set up a geom mirror.
| +> 
| +> After reading the man pages and the following guides
| +> http://www.onlamp.com/pub/a/bsd/2005/11/10/FreeBSD_Basics.html?page=1
| +> http://people.freebsd.org/~rse/mirror/
| +> this is what I did:
| +> 
| +> # gmirror label -v -b round-robin gm0s1 ad0s1 ad2s1
| +> Metadata value stored on ad0s1.
| +> Metadata value stored on ad2s1.
| +> Done.
| +> 
| +> But then attempting to load the mirror, causes a system
| +> panic. I'm copying the messages by hand, so excuse any typo.
| +> Also, I'm copying what I see on the screen ... I can't know
| +> if there were other errors before the ones I'm transcribing
| +> (capturing the session with script(1) doesn't help here).
| +> 
| +> # gmirror load
| +> WARNING: Expected rawoffset 0, found 63
| +> WARNING: Device name truncated! (mirror/gsm0s1ccccccccccccc...c)
| +> [ this is repeated several times. gsm0s1 is followed above
| +> by 51 'c's) ]
| +> 
| +> Fatal double fault:
| +> eip = 0xc04a7982
| +> esp = 0xe2244ff4
| +> ebp = 0xe2245038
| +> panic: double fault
| +> 
| +> 
| +> My questions:
| +> 
| +> did I do something wrong? (maybe the system shouldn't let me
| +> instead of entering into a panic ...)
| +> 
| +> Was this caused because I used already sliced and
| +> partitioned disks? The second example in the guide written
| +> by rse uses slices ... 
| 
| You should configure both slices and partitions on mirrored provider.

Pawel,

thanks for your reply. 

If you say that I should set up the mirror first and then
slice and partition, I cannot but trust. But this is not
what I see here: http://people.freebsd.org/~rse/mirror/

# place a GEOM mirror label onto first slice of second disk
# (actually on the last block of the disk slice)
gmirror label -v -n -b round-robin gm0s1 /dev/ad1s1

the provider is already a slice, only partitions are done after
configuring and loading the mirror ...

I'll try what you suggest, but I'll have to reintall the
whole box to do that.

| To fix it you need to clear the old metadata first.

I'm not following you here ... what metadata? The one added
by 'gmirror label'? Or metadata added by the normal
fdisk/disklabel process that I do when first installing the
box?

| +> Or is this something that is expected to happen and should
| +> be fixed?
| 
| This shouldn't act that way and panic your box for sure...

That's what I thought. Should I file a PR? Under which
category? 

Thanks,

Fernan
 
| -- 
| Pawel Jakub Dawidek                       http://www.wheel.pl
| pjd at FreeBSD.org                           http://www.FreeBSD.org
| FreeBSD committer                         Am I Evil? Yes, I Am!
|
+----]


More information about the freebsd-geom mailing list