Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Jan 1999 10:04:06 +1030
From:      Greg Lehey <grog@lemis.com>
To:        M Ferreira <mfer@leirianet.pt>
Cc:        freebsd-questions@FreeBSD.ORG
Subject:   Re: Fatal trap while reading vinum config from drive
Message-ID:  <19990129100406.L8473@freebie.lemis.com>
In-Reply-To: <36b85b8f.93466878@mail2.leirianet.pt>; from M Ferreira on Thu, Jan 28, 1999 at 12:47:44PM %2B0000
References:  <36b85b8f.93466878@mail2.leirianet.pt>

next in thread | previous in thread | raw e-mail | index | archive | help
[Format recovered at freebie.lemis.com]

On Thursday, 28 January 1999 at 12:47:44 +0000, M Ferreira wrote:
>
> I have 4 disks labeled:
>
> da0s1
>   a:   204800        0    4.2BSD        0     0     0   # (Cyl.    0 -
> 143*)
>   c:  4226725        0    unused        0     0         # (Cyl.    0 -
> 2955*)
>   e:  1972224   204800    4.2BSD        0     0     0   # (Cyl.  143*-
> 1522*)
>   f:  2049701  2177024    unused        0     0         # (Cyl. 1522*-
> 2955*)

Please do me a favour and use a mailer which doesn't mutilate the text
like this.  This was illegible, and I had to spend several minutes
recovering the format.

Also, you don't really need to copy -questions on this one.  As the
man page says, if you run into trouble, contact me.

> da1s1
>   b:   538624        0      swap                        # (Cyl.    0 - 376*)
>   c:  4226725        0    unused        0     0         # (Cyl.    0 - 2955*)
>   e:  3688101   538624    unused        0     0         # (Cyl.  376*- 2955*)
>
> da2s1
>   c:  8888924        0    unused        0     0         # (Cyl.    0 - 553*)
>   e:  8888924        0    unused        0     0         # (Cyl.    0 - 553*)
>
> da3s1
>   c:  8888924        0    unused        0     0         # (Cyl.    0 - 553*)
>   e:  8888924        0    unused        0     0         # (Cyl.    0 - 553*)
>
> My intention is to have
>
> /dev/da1s1b             none            swap    sw              0 0
> /dev/da0s1a             /               ufs     rw              1 1
> /dev/da0s1e             /usr            ufs     rw              2 2
> /dev/vinum/small        /arch           ufs     rw              2 3
> /dev/vinum/big          /data           ufs     rw              2 4
>
> so, i've created the following config:
>
> drive a device /dev/da0s1f
> drive b device /dev/da1s1e
> drive c device /dev/da2s1e
> drive d device /dev/da3s1e
>
> volume small
>         plex org concat
>                 sd len 2047735b drive a
>                 sd len 3686135b drive b
>
> volume big
>         plex org striped 128b
>                 sd len 8888055b drive c
>                 sd len 8888055b drive d
>
> disk length values are shortened 265b in order to hold vinum config.
>
> vinum create 'config' gives me:
>
> Configuration summary
>
> Drives:         4 (4 configured)
> Volumes:        2 (4 configured)
> Plexes:         2 (8 configured)
> Subdisks:       4 (16 configured)
>
> D a                     State: up       Device /dev/da0s1f
> D b                     State: up       Device /dev/da1s1e
> D c                     State: up       Device /dev/da2s1e
> D d                     State: up       Device /dev/da3s1e
>
> V small                 State: up       Plexes:       1 Size: 2799 MB
> V big                   State: up       Plexes:       1 Size: 8679 MB
>
> P small.p0            C State: up       Subdisks:     2 Size: 2799 MB
> P big.p0              S State: up       Subdisks:     2 Size: 8679 MB
>
> S small.p0.s0           State: up       PO:        0  B Size: 999 MB
> S small.p0.s1           State: up       PO:      999 MB Size: 1799 MB
> S big.p0.s0             State: up       PO:        0  B Size: 4339 MB
> S big.p0.s1             State: up       PO:       64 kB Size: 4339 MB
>
> Just to confirm everything is fine, init small.p0 and init big.p0
> finish successfully.
>
> newfs -v /dev/vinum/rbig finishes successfully with one minor quirk
> wich is:
>
> Warning: 530 sector(s) in last cylinder unallocated
> /dev/vinum/rbig:        17776110 sectors in 4340 cylinders of 1 tracks, 4096 sectors
>         8679.7MB in 272 cyl groups (16 c/g, 32.00MB/g, 7936 i/g)
> super-block backups (for fsck -b #) at:
>  32, 65568, 131104, 196640, 262176, 327712, 393248, 458784, 524320,
> 589856,
>
> Same thing with newfs -v /dev/vinum/rbig:
>
> Warning: 530 sector(s) in last cylinder unallocated
> /dev/vinum/rsmall:      5733870 sectors in 1400 cylinders of 1 tracks, 4096 sectors
>         2799.7MB in 88 cyl groups (16 c/g, 32.00MB/g, 7936 i/g)
> super-block backups (for fsck -b #) at:
>  32, 65568, 131104, 196640, 262176, 327712, 393248, 458784, 524320,
> 589856,

Yes, these messages are normal, not just for vinum volumes.

> mounting /dev/vinum/small and /dev/vinum/big under /arch and /data
> goes ok:
>
> Filesystem       1K-blocks     Used    Avail Capacity  Mounted on
> /dev/da0s1a          99183    37265    53984    41%    /
> /dev/da0s1e         955591   763377   115767    87%    /usr
> procfs                   4        4        0   100%    /proc
> /dev/vinum/small   2778213        1  2555955     0%    /arch
> /dev/vinum/big     8613858        1  7924749     0%    /data
>
> Now the bad news. Without touching $vinum_slices in rc.conf, i tried
> to reboot and manually do a vinum read /dev/da0 /dev/da1 /dev/da2
> /dev/da3 (compatibility slice naming should be ok, i guess)

Yes, this is the correct way to do it.

> and i get:
>
> Fatal trap 18: integer divide fault while in kernel mode
>
> How can I diagnose and correct this?
>
> I'm running 3.0-stable cvsuped this weekend.

I just fixed this bug yesterday, but I'm confused that it hit you
under these circumstances.  Could you please try this (with a
Bourne-style shell) *before* you try starting vinum again:

  for i in /dev/da0s1f /dev/da1s1e /dev/da2s1e /dev/da3s1e; do
    (dd if=/dev/da1h skip=8 count=6|tr -d '\000-\011\200-\377'; echo) >> log
  done

Then send me the contents of the file log.  It should look something
like:

IN VINOpanic.lemis.comdrive1}6E7~^K6T^Yfoovolume obj state up
volume src state up
volume raid state down
volume r state down
volume foo state up
plex name obj.p0 state corrupt org concat vol obj 
plex name obj.p1 state corrupt org striped 128b vol obj 
plex name src.p0 state corrupt org striped 128b vol src 
plex name src.p1 state up org concat vol src 
plex name raid.p0 state faulty org disorg vol raid 
plex name r.p0 state faulty org disorg vol r 
plex name foo.p0 state up org concat vol foo 
plex name foo.p1 state faulty org concat vol foo 
sd name obj.p0.s0 drive drive2 plex obj.p0 state reborn len 409600b driveoffset 265b plexoffset 0b
sd name obj.p0.s1 drive drive4 plex obj.p0 state up len 409600b driveoffset 265b plexoffset 409600b
sd name obj.p1.s0 drive drive1 plex obj.p1 state up len 204800b driveoffset 265b plexoffset 0b
sd name obj.p1.s1 drive drive2 plex obj.p1 state reborn len 204800b driveoffset 409865b plexoffset 128b
sd name obj.p1.s2 drive drive3 plex obj.p1 state up len 204800b driveoffset 265b plexoffset 256b
sd name obj.p1.s3 drive drive4 plex obj.p1 state up len 204800b driveoffset 409865b plexoffset 384b
sd name src.p0.s0 drive drive1 plex src.p0 state up len 204800b driveoffset 205065b plexoffset 0b
sd name src.p0.s1 drive drive2 plex src.p0 state stale len 204800b driveoffset 614665b plexoffset 128b
sd name src.p0.s2 drive drive3 plex src.p0 state up len 204800b driveoffset 205065b plexoffset 256b
sd name src.p0.s3 drive drive4 plex src.p0 state up len 204800b driveoffset 614665b plexoffset 384b

The first line contains the magic number and the name of the system,
as well as the beginning of the first line of the saved
configuration.  The rest of the text shows the configuration as saved
on the disk.  I'm guessing that something has gone wrong saving this
configuration.

When you re-sup (not in the next 4 hours, I need to add some
documentation), look at vinum(4), in the BUGS section.  It will
include information on how to debug vinum problems.

Greg
--
When replying to this message, please do *not* copy FreeBSD-questionsn
See complete headers for address, home page and phone numbers
finger grog@lemis.com for PGP public key

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?19990129100406.L8473>