Subject: Re: Looking for NetBSD support for RAIDZone
To: None <sudog@sudog.com>
From: Jason R Thorpe <thorpej@zembu.com>
List: netbsd-help
Date: 07/13/2000 15:08:47
On Thu, Jul 13, 2000 at 02:19:56PM -0700, sudog@sudog.com wrote:

 > RAIDZone recently added support for Linux, but has anyone here been
 > successful in installing them on a NetBSD-type system? I'm not happy
 > with being stuck with a crashy 2GB-limited-filesize linux system as
 > our 180 GB capacity fileserver..  But--if I could find support for
 > NetBSD, I could easily convince them to switch over and my life would
 > suddenly be a lot easier.
 > 
 > Comments appreciated, pointers happily accepted with a smile,

NetBSD has not has a 2GB filesystem limit for ... several years.  And
NetBSD already comes with a RAID implementation called RAIDframe
(originally developed at CMU as a RAID research tool).

Here's a snippet from my AlphaServer 1200:

[ using 306000 bytes of netbsd ELF symbol table ]
Copyright (c) 1996, 1997, 1998, 1999, 2000
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 1.5B (FRAU-FARBISSINA) #37: Wed Jul 12 15:54:41 PDT 2000
    thorpej@frau-farbissina:/u2/netbsd/src/sys/arch/alpha/compile/FRAU-FARBISSINA
AlphaServer 1200 5/533 4MB, 531MHz, s/n NI83605791
8192 byte page size, 2 processors.
total memory = 1024 MB
(2072 KB reserved for PROM, 1021 MB used by NetBSD)
avail memory = 945 MB
using 6553 buffers containing 52424 KB of memory
mainbus0 (root)
cpu0 at mainbus0: ID 0 (primary), 21164A-2
cpu0: Architecture extensions: 1<BWX>
cpu1 at mainbus0: ID 1, 21164A-2
mcbus0 at mainbus0
mcmem0 at mcbus0 mid 1: Memory
mcpcia0 at mcbus0 mid 5: PCI Bridge
mcpcia0: Horse Revision 3, Left Handed Saddle Revision 4, CAP Revision 2
pci0 at mcpcia0 bus 0
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
siop0 at pci0 dev 1 function 0: Symbios Logic 53c810 (fast scsi)
siop0: interrupting at kn300 irq 36
scsibus0 at siop0: 8 targets, 8 luns per target
isp0 at pci0 dev 2 function 0
isp0: interrupting at kn300 irq 40
isp0: Ultra Mode Capable
isp0: Board Revision 1040B, loaded F/W Revision 4.65.0
isp0: Last F/W revision was 5.57.1
isp0: 243 max I/O commands supported
isp0: driver initiated bus reset of bus 0
scsibus1 at isp0: 16 targets, 8 luns per target
mcpcia1 at mcbus0 mid 4: PCI Bridge
mcpcia1: Horse Revision 3, Left Handed Saddle Revision 4, CAP Revision 2
pci1 at mcpcia1 bus 0
pci1: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pceb0 at pci1 dev 1 function 0: Intel 82375EB/SB PCI-EISA Bridge (PCEB) (rev. 0x15)
vga0 at pci1 dev 2 function 0: S3 Trio32/64 (rev. 0x54)
wsdisplay0 at vga0: console (80x25, vt100 emulation)
tlp0 at pci1 dev 3 function 0: DECchip 21140A Ethernet, pass 2.2
tlp0: interrupting at kn300 irq 12
tlp0: DEC DE500-AA, Ethernet address 00:00:f8:1a:d8:f6
nsphy0 at tlp0 phy 5: DP83840 10/100 media interface, rev. 0
nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
eisa0 at pceb0
isa0 at pceb0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0
lpt0 at isa0 port 0x3bc-0x3bf irq 7
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
isabeep0 at pcppi0
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
mcclock0 at isa0 port 0x70-0x71: mc146818 or compatible
mcbus0 mid 2: CPU 4MB BCache
stray kn300 irq 40
scsibus0: waiting 2 seconds for devices to settle...
siop0: target 5 now synchronous at 10.0Mhz, offset 8
cd0 at scsibus0 target 5 lun 0: <DEC, RRD46   (C) DEC, 1337> SCSI2 5/cdrom removable
scsibus1: waiting 2 seconds for devices to settle...
isp0: Bus 0 Target 0 Async Mode
stray kn300 irq 40
sd0 at scsibus1 target 0 lun 0: <DEC, RZ2DA-LA (C) DEC, N1H1> SCSI2 0/direct fixed
sd0: 8678 MB, 5273 cyl, 20 head, 168 sec, 512 bytes/sect x 17773524 sectors
isp0: Bus 0 Target 1 Async Mode
stray kn300 irq 40
sd1 at scsibus1 target 1 lun 0: <DEC, RZ2DA-LA (C) DEC, N1H1> SCSI2 0/direct fixed
sd1: 8678 MB, 5273 cyl, 20 head, 168 sec, 512 bytes/sect x 17773524 sectors
isp0: Bus 0 Target 2 Async Mode
stray kn300 irq 40
sd2 at scsibus1 target 2 lun 0: <DEC, RZ2DA-LA (C) DEC, N1H1> SCSI2 0/direct fixed
sd2: 8678 MB, 5273 cyl, 20 head, 168 sec, 512 bytes/sect x 17773524 sectors
isp0: Bus 0 Target 3 Async Mode
stray kn300 irq 40
sd3 at scsibus1 target 3 lun 0: <DEC, RZ2DA-LA (C) DEC, N1H1> SCSI2 0/direct fixed
sd3: 8678 MB, 5273 cyl, 20 head, 168 sec, 512 bytes/sect x 17773524 sectors
Kernelized RAIDframe activated
IPsec: Initialized Security Association Processing.
root on sd0a dumps on sd0b
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 0 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
root file system type: ffs
RAIDFRAME: protectedSectors is 64
stray kn300 irq 40
isp0: Bus 0 Target 1 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 1 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
stray kn300 irq 40
isp0: Bus 0 Target 2 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 2 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
stray kn300 irq 40
isp0: Bus 0 Target 3 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
isp0: Bus 0 Target 3 at 20MHz Max Offset 8, 16 bit wide, Tagged Queueing Enabled
stray kn300 irq 40
raid0: Component /dev/sd1a being configured at row: 0 col: 0
         Row: 0 Column: 0 Num Rows: 1 Num Columns: 3
         Version: 2 Serial Number: 22473 Mod Counter: 246
         Clean: No Status: 0
/dev/sd1a is not clean!
raid0: Component /dev/sd2a being configured at row: 0 col: 1
         Row: 0 Column: 1 Num Rows: 1 Num Columns: 3
         Version: 2 Serial Number: 22473 Mod Counter: 246
         Clean: No Status: 0
/dev/sd2a is not clean!
raid0: Component /dev/sd3a being configured at row: 0 col: 2
         Row: 0 Column: 2 Num Rows: 1 Num Columns: 3
         Version: 2 Serial Number: 22473 Mod Counter: 246
         Clean: No Status: 0
/dev/sd3a is not clean!
RAIDFRAME: Configure (RAID Level 5): total number of sectors is 35540160 (17353 MB)
RAIDFRAME(RAID Level 5): Using 20 floating recon bufs with head sep limit 10

frau-farbissina:thorpej 12$ df
Filesystem                  1024-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a                        128583    44732    77421    36%    /
/dev/sd0d                       2032350   221045  1709687    11%    /usr
/dev/sd0f                       4419303        1  4198336     0%    /u1
/dev/raid0a                    17145180  1098355 15189566     6%    /u2
kernfs                                1        1        0   100%    /kern
procfs                                8        8        0   100%    /proc
fdesc                                 1        1        0   100%    /dev
pid154@frau-farbissina:/nfs           0        0        0   100%    /nfs
swinger:/u1                     9774612  3362714  5923167    36%    /amd/swinger/u1
yeah-baby:/u1                  13652212  2823739 10145862    21%    /amd/yeah-baby/u1
frau-farbissina:thorpej 13$ 

Hm, my example above shows the reboot after a crash (unrelated to RAID :-),
note that the `unclean' components had partity reconstruction done while
the file system was totally usable (i.e. the file system was fsck'd then
mounted and the system came up multi-user while the parity reconstruction
was still happening).

I've been very happy with RAIDframe.

-- 
        -- Jason R. Thorpe <thorpej@zembu.com>