tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Strange problem with raidframe under NetBSD-5.1



        Hello.  I've just encountered a strange problem with raidframe under
NetBSD-5.1 that I can't immediately explain.

        this machine has been runing a raid set since 2007.  The raid set was
originally constructed under NetBSD-3.  For the past year, it's been 
running 5.0_stable with sources from 
July 2009 or so without a problem.      Last night, I installed NetBSD-5.1 with
sources from May 23 2012 or so.  Now, the raid0 set fails the first
component with an i/o error with no corresponding disk  errors underneath.  
Trying to reconstruct to the failed component also fails with an error of
22, invalid argument.  Looking at the dmesg output compared with the output
of raidctl -s reveals the problem.  The size of the raid in the dmesg
output is bogus, and, if the raid driver dries to write as many blocks as
is reported by the configuration output, it will surely fail as it does. 
However, raidctl -g /dev/wd0a looks ok and the underlying disk label on
/dev/wd0a looks ok as well.
        Where does the raid driver get the numbers it reports on bootup?
Also, there is a second raid set on this machine, the second half of the
same two drives, which was constructed at the same time.  It works fine
with the new code.

        Below is the output of the boot sequence before the upgrade, and then
the boot sequence after the upgrade.  Below that are the output of  raidctl
-s raid0 and raidctl -g /dev/wd0a raid0.
        It looks to me like something is not zero'd out in the component label 
that
should be, but some change in the raid code is no longer ignoring the noise
in the component label.
Any ideas?

-thanks
-Brian

dmesg boot from NetBSD-5.0_stable from July 2009 sources.

raid0: RAID Level 1
raid0: Components: /dev/wd0a /dev/wd1a
raid0: Total Sectors: 268435264 (131071 MB)

Dmesg boot from NetBSD-5.1_stable from May 23 2012 sources

raid0: RAID Level 1
raid0: Components: /dev/wd0a[**FAILED**] /dev/wd1a
raid0: Total Sectors: 39213563641016896 (19147247871590 MB)

Output from raidctl -s raid0 and raidctl -g /dev/wd0a raid0
(From NetBSD-5.1 sources of May 23, 2012)

raidctl -s raid0
Components:
           /dev/wd0a: failed
           /dev/wd1a: optimal
No spares.
/dev/wd0a status is: failed.  Skipping label.
Component label for /dev/wd1a:
   Row: 0, Column: 1, Num Rows: 1, Num Columns: 2
   Version: 2, Serial Number: 2007050100, Mod Counter: 1580164
   Clean: No, Status: 0
   sectPerSU: 64, SUsPerPU: 1, SUsPerRU: 1
   Queue size: 100, blocksize: 512, numBlocks: 268435264
   RAID Level: 1
   Autoconfig: Yes
   Root partition: Yes
   Last configured as: raid0
Parity status: clean
Reconstruction is 100% complete.
Parity Re-write is 100% complete.
Copyback is 100% complete.

raidctl -g /dev/wd0a raid0
Component label for /dev/wd0a:
   Row: 0, Column: 0, Num Rows: 1, Num Columns: 2
   Version: 2, Serial Number: 2007050100, Mod Counter: 1580148
   Clean: Yes, Status: 0
   sectPerSU: 64, SUsPerPU: 1, SUsPerRU: 1
   Queue size: 100, blocksize: 512, numBlocks: 268435264
   RAID Level: 1
   Autoconfig: Yes
   Root partition: Yes
   Last configured as: raid0

Output from disklabel /dev/rwd0d

# /dev/rwd0d:
type: unknown
disk: st3300631as_r
label: 
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 581421
total sectors: 586072368
rpm: 7200
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0           # microseconds
track-to-track seek: 0  # microseconds
drivedata: 0 

5 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 a: 268435329        63       RAID                     # (Cyl.      0*- 266304*)
 c: 586072305        63     unused      0     0        # (Cyl.      0*- 581420)
 d: 586072368         0     unused      0     0        # (Cyl.      0 - 581420)
 e: 317636975 268435393       RAID                     # (Cyl. 266304*- 581420)


Home | Main Index | Thread Index | Old Index