Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 09 Apr 2000 22:46:54 -0700
From:      tomb <tomb@cgf.net>
To:        Greg Lehey <grog@lemis.com>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: vinum causes fatal double fault kernel panic
Message-ID:  <38F16ACE.F93E576E@cgf.net>
References:  <38F0359F.E45937FC@cgf.net> <38F0C358.D120908@cgf.net> <38F0359F.E45937FC@cgf.net> <20000410104141.C17984@freebie.lemis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Greg,

So I have just looked at the man page for disklabel and followed your suggestion.
This is what I got:  I added the line that defines a: 8496884............  As you can
see disklabel complained, but I just answered no. The same result happened with the
second disk.  At this point I have not done anything to the disk's (like newfs or
/stand/sysinstall) they are low-level formatted only.

>>>>>>>>>>>>>>>>>>Thanks Tom.

disklablel -e  /dev/da0

disk: SEAGATE
label: ST34371W
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 255
sectors/cylinder: 16065
cylinders: 528
sectors/unit: 8496884
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0           # milliseconds
track-to-track seek: 0  # milliseconds
drivedata: 0

8 partitions:
#        size   offset    fstype   [fsize bsize bps/cpg]
  a:  8496884        0    vinum         0     0       0 # (Cyl.    0 - 528*)
  c:  8496884        0    unused        0     0         # (Cyl.    0 - 528*)

disklabel: Operation not supported by device
re-edit the label? [y]:

Despite this rejection I run:
su-2.03# vinum create config
   1: drive a device "/dev/da0"
** 1 e: Unknown error: -1



Greg Lehey wrote:

> On Sunday,  9 April 2000 at  0:47:43 -0700, tomb wrote:
> > Hi,
> > I've been attempting to create a mirrored pair of disc's.  I'm not
> > concerned about performance only the backup of my critical data.  Armed
> > with a pair of scsi drives (same model) and the man pages I came up with
> > a config file (listed below).  The problem is that if I use this to
> > setup the mirro I get a
> > "fatal double fault" <<cut>> panic: double fault
> > message and the machine reboots.
>
> At what point?
>

When I do the create command:
bash# vinum create config

>
> > Platform:
> >
> > FreeBSD 4.0 Release,
> > AMD K6-2
> > 128Mb RAM
> > Custom Kernel (Removed spurious devices)
> > Adaptec 2940-U2W
> >
> > Drives:
> >     ad0 (OS drive, not to be mirrored!)
> >     da0 ID1 (Seagate 4141Mb Barracuda mirror)
> >     da1 ID8 (Seagate 4141Mb Barracuda mirror)
> >
> > vinum config file:
> >
> > drive a device /dev/da0s1e
> > drive b device /dev/da1s1e
> >     volume mirror
> >       plex org concat
> >         sd length 4141m drive a
> >       plex org concat
> >         sd length 4141m drive b
>
> That looks pretty straightforward.
>
> On Sunday,  9 April 2000 at 10:52:24 -0700, tomb wrote:
> > Additional:
> >
> > So I decided to reformat the drives using the scsi adaptors format utility
> > (which completed with success).  I modified the vinum config file to the
> > following:
> >
> > drive a device /dev/da0s1
> > drive b device /dev/da1s1
> >     volume mirror
> >       plex org concat
> >         sd length 4141m drive a
> >       plex org concat
> >         sd length 4141m drive b
> >
> > Now I start vinum with the following command....
> >
> > su-2.03# vinum create config
> >    1: drive a device /dev/da0s1
> > ** 1 : Invalid argument
> >    2: drive b device /dev/da1s1
> > ** 2 : Invalid argument
>
> And this doesn't seem strange?
>
> > 0 drives:
>
> Nor this?
>
> > 1 volumes:
> > V mirror                State: down     Plexes:       2 Size:       4141 MB
> >
> > 2 plexes:
> > P mirror.p0           C State: faulty   Subdisks:     1 Size:       4141 MB
> >
> > P mirror.p1           C State: faulty   Subdisks:     1 Size:       4141 MB
> >
> > 2 subdisks:
> > S mirror.p0.s0          State: crashed  PO:        0  B Size:       4141 MB
> >
> > S mirror.p1.s0          State: crashed  PO:        0  B Size:       4141 MB
> >
> > And seeing the fault "State: crashed" I get do a verbose info and get
> > .............
> >
> > su-2.03# vinum list -r -V mirror
> > Volume mirror:  Size: 4342153216 bytes (4141 MB)
> >                 State: down
> >                 Flags:
> >                 2 plexes
> >                 Read policy: round robin
> >                 Plex  0:        mirror.p0       (concat),       4141 MB
> >                 Plex  1:        mirror.p1       (concat),       4141 MB
> > Plex mirror.p0: Size:   4342153216 bytes (4141 MB)
> >                 Subdisks:        1
> >                 State: faulty
> >                 Organization: concat
> >                 Part of volume mirror
> >
> >                 Subdisk 0:      mirror.p0.s0
> >                   state: crashed        size  4342153216 (4141 MB)
> >                         offset         0 (0x0)
> >
> > Plex mirror.p1: Size:   4342153216 bytes (4141 MB)
> >                 Subdisks:        1
> >                 State: faulty
> >                 Organization: concat
> >                 Part of volume mirror
> >
> >                 Subdisk 0:      mirror.p1.s0
> >                   state: crashed        size  4342153216 (4141 MB)
> >                         offset         0 (0x0)
> >
> > Subdisk mirror.p0.s0:
> >                 Size:       4342153216 bytes (4141 MB)
> >                 State: crashed
> >                 Plex mirror.p0 at offset 0 (0  B)
> >                 Drive a (/dev/da0s1), no offset
> >
> > Subdisk mirror.p1.s0:
> >                 Size:       4342153216 bytes (4141 MB)
> >                 State: crashed
> >                 Plex mirror.p1 at offset 0 (0  B)
> >                 Drive b (/dev/da1s1), no offset
>
> Well, this tells me that your volume is down.  I don't understand why
> you should get a crash, but you haven't explained when it happened.
> Obviously the crash is a bug: it should return an error message saying
> the volume is inaccessible.
>
> Probably, though, you don't want an error message, you want it to
> work.  Have you read this part of the man page?

Very useful.

>    DRIVE LAYOUT CONSIDERATIONS
>      vinum drives are currently BSD disk partitions.  They must be of type
>      vinum in order to avoid overwriting data used for other purposes.  Use
>      disklabel -e to edit a partition type definition.  The following display
>      shows a typical partition layout as shown by disklabel:
>
>      8 partitions:
>      #        size   offset    fstype   [fsize bsize bps/cpg]
>        a:    81920   344064    4.2BSD        0     0     0   # (Cyl.  240*- 297*)
>        b:   262144    81920      swap                        # (Cyl.   57*- 240*)
>        c:  4226725        0    unused        0     0         # (Cyl.    0 - 2955*)
>        e:    81920        0    4.2BSD        0     0     0   # (Cyl.    0 - 57*)
>        f:  1900000   425984    4.2BSD        0     0     0   # (Cyl.  297*- 1626*)
>        g:  1900741  2325984     vinum        0     0     0   # (Cyl. 1626*- 2955*)
>
>      In this example, partition g may be used as a vinum partition.  Parti-
>      tions a, e and f may be used as UFS file systems or ccd partitions.  Par-
>      tition b is a swap partition, and partition c represents the whole disk
>      and should not be used for any other purpose.
>
>      vinum uses the first 265 sectors on each partition for configuration in-
>      formation, so the maximum size of a subdisk is 265 sectors smaller than
>      the drive.
>
> Greg
> --
> When replying to this message, please copy the original recipients.
> For more information, see http://www.lemis.com/questions.html
> Finger grog@lemis.com for PGP public key
> See complete headers for address and phone numbers



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?38F16ACE.F93E576E>