Unfortunately manual rebuild does not work yet on softraid.  I'll add
that to the man page.

On Mon, Feb 09, 2009 at 10:14:24AM -0600, Aaron Poffenberger wrote:
> I noticed that bioctl(8) now includes the -R flag to kick off a manual  
> rebuild. I upgraded to the current snapshot and setup a test mirror to  
> try out the new feature but I must not understand how the syntax works.  
> Assuming bioctl -R works with softraid(4), can someone tell me how to  
> use it correctly? Here's the initial setup of the array and the steps I  
> took:
>
>  # bioctl -i sd4
>  Volume  Status               Size Device   softraid0 0 Online       
> 500099595776 sd4     RAID1
>        0 Online       500105176064 0:0.0   noencl <wd5a>
>        1 Online       500105176064 0:1.0   noencl <wd6a>
>        2 Online       500099595776 0:2.0   noencl <wd5d>
>
> I built the array following the instructions in softraid(4). Everything  
> works as expected. I copied a few 100 MBs from /usr/src to the new  
> array. I then stopped the array with:
>
>  # bioctl -d sd4
>
> And then attempted to re-create the array without the last element:
>
>  # bioctl -c 1 -l /dev/wd5a,/dev/wd6a softraid0
>
> which failed with message:
>
>  bioctl: BIOCCREATERAID: Invalid argument
>
> so I forced it with:
>
>  # bioctl -C force -c 1 -l /dev/wd5a,/dev/wd6a softraid0
>
> which resulted in this message:
>
>  softraid0: not all chunks were provided
>  softraid0: can't attach metadata type 0
>  softraid0: not all chunks were provided
>  softraid0: can't attach metadata type 0
>  scsibus2 at softraid0: 1 targets, initiator 1
>  sd4 at scsibus2 targ 0 lun 0: <OPENBSD, SR RAID 1, 003> SCSI2 0/direct  
> fixed
>  sd4: 476937MB, 512 bytes/sec, 976767923 sec total
>
> I then mounted the array and copied more data to it after which I again  
> deleted it with:
>
>  # bioctl -d sd4
>
> And then re-created the array with:
>
>  #  bioctl -c 1 -l /dev/wd5a,/dev/wd6a,/dev/wd5d softraid0
>
> which gave this message:
>
>  scsibus2 at softraid0: 1 targets, initiator 1
>  sd4 at scsibus2 targ 0 lun 0: <OPENBSD, SR RAID 1, 003> SCSI2 0/direct  
> fixed
>  sd4: 476937MB, 512 bytes/sec, 976767923 sec total
>
> bioctl -i sd4 showed:
>
>  Volume  Status               Size Device
>  softraid0 0 Online       500105176064 sd4     RAID1
>        0 Online       500105176064 0:0.0   noencl <wd5a>
>        1 Online       500105176064 0:1.0   noencl <wd6a>
>
> I had to delete and recreate with '-C force' to see all three drives.
>
>  # bioctl -i sd4                                                         
> Volume  Status               Size Device  softraid0 0 Online       
> 500099595776 sd4     RAID1
>        0 Online       500105176064 0:0.0   noencl <wd5a>
>        1 Online       500105176064 0:1.0   noencl <wd6a>
>        2 Online       500099595776 0:2.0   noencl <wd5d>
>
> The array mounts but surely must be "dirty" or inconsistent since I  
> copied data to the degraded array. So I tried the rebuild command in  
> various ways and never could find parameters that would work:
>
>  # bioctl -R /dev/wd5d sd4
>  # bioctl -R 0:2.0 sd4
>
> both gave the error:
>
>  bioctl: BIOCSETSTATE: Invalid argument
>
> How do I initiate a manual rebuild?
>
> A couple of other questions:
> 1) How do I manually fail one element in a softraid mirror? I deleted  
> the array and forcibly recreated it minus one element.
>    a) Is that correct? Do I need to run any consistency check after  
> doing so?
> 2) Is there a way to add new drive to a running softraid so I can then  
> rebuild using it?
> 3) In the event of an unclean shutdown, is there any process like  
> `radictl -P all` that should be run?
>
> Cheers,
>
> --Aaron
>
> The kernel is custom in that RAIDFrame is enabled. I'm trying to move a  
> mirrored RAIDFrame device to softraid. Other than that no changes were 
> made.
>
> OpenBSD 4.5-beta (GENERIC) #1: Mon Feb  9 00:05:23 CST 2009
>    [email protected]:/usr/src/sys/arch/i386/compile/GENERIC
> cpu0: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ ("AuthenticAMD"  
> 686-class, 512KB L2 cache) 2.01 GHz
> cpu0:  
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,CX16
> real mem  = 1072193536 (1022MB)
> avail mem = 1028075520 (980MB)
> mainbus0 at root
> bios0 at mainbus0: AT/286+ BIOS, date 11/29/06, BIOS32 rev. 0 @ 0xf1fc0,  
> SMBIOS rev. 2.4 @ 0xf0000 (67 entries)
> bios0: vendor Phoenix Technologies, LTD version "ASUS M2NPV-VM ACPI BIOS  
> Revision 0603" date 11/29/2006
> bios0: ASUSTek Computer INC. M2NPV-VM
> acpi0 at bios0: rev 2
> acpi0: tables DSDT FACP HPET MCFG APIC
> acpi0: wakeup devices HUB0(S5) XVRA(S5) XVRB(S5) XVRC(S5) USB0(S4)  
> USB2(S4) AZAD(S5) MMAC(S5) MMCI(S5) UAR1(S5) UAR2(S5) PS2M(S4) PS2K(S4)
> acpitimer0 at acpi0: 3579545 Hz, 24 bits
> acpihpet0 at acpi0: 25000000 Hz
> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> cpu0 at mainbus0: apid 0 (boot processor)
> cpu0: apic clock running at 200MHz
> cpu at mainbus0: not configured
> ioapic0 at mainbus0: apid 2 pa 0xfec00000, version 11, 24 pins
> ioapic0: misconfigured as apic 0, remapped to apid 2
> acpiprt0 at acpi0: bus 0 (PCI0)
> acpiprt1 at acpi0: bus 4 (HUB0)
> acpicpu0 at acpi0
> acpitz0 at acpi0: critical temperature 75 degC
> acpibtn0 at acpi0: PWRB
> bios0: ROM list: 0xc0000/0x10000 0xd0000/0x4000! 0xd4000/0x4800
> pci0 at mainbus0 bus 0: configuration mode 1 (bios)
> "NVIDIA C51 Host" rev 0xa2 at pci0 dev 0 function 0 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 1 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 2 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 3 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 4 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 5 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 6 not configured
> "NVIDIA C51 Memory" rev 0xa2 at pci0 dev 0 function 7 not configured
> ppb0 at pci0 dev 2 function 0 "NVIDIA C51 PCIE" rev 0xa1
> pci1 at ppb0 bus 1
> ppb1 at pci0 dev 3 function 0 "NVIDIA C51 PCIE" rev 0xa1
> pci2 at ppb1 bus 2
> ppb2 at pci0 dev 4 function 0 "NVIDIA C51 PCIE" rev 0xa1
> pci3 at ppb2 bus 3
> vga1 at pci3 dev 0 function 0 "ATI Radeon X300" rev 0x00
> wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
> wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
> radeondrm0 at vga1: apic 2 int 16 (irq 11)
> drm0 at radeondrm0
> "ATI Radeon X300 Sec" rev 0x00 at pci3 dev 0 function 1 not configured
> "NVIDIA MCP51 Host" rev 0xa2 at pci0 dev 9 function 0 not configured
> pcib0 at pci0 dev 10 function 0 "NVIDIA MCP51 ISA" rev 0xa3
> nviic0 at pci0 dev 10 function 1 "NVIDIA MCP51 SMBus" rev 0xa3
> iic0 at nviic0
> spdmem0 at iic0 addr 0x50: 512MB DDR2 SDRAM non-parity PC2-6400CL3
> spdmem1 at iic0 addr 0x51: 512MB DDR2 SDRAM non-parity PC2-6400CL3
> iic1 at nviic0
> "NVIDIA MCP51 Memory" rev 0xa3 at pci0 dev 10 function 2 not configured
> ohci0 at pci0 dev 11 function 0 "NVIDIA MCP51 USB" rev 0xa3: apic 2 int  
> 20 (irq 5), version 1.0, legacy support
> ehci0 at pci0 dev 11 function 1 "NVIDIA MCP51 USB" rev 0xa3: apic 2 int  
> 20 (irq 10)
> usb0 at ehci0: USB revision 2.0
> uhub0 at usb0 "NVIDIA EHCI root hub" rev 2.00/1.00 addr 1
> pciide0 at pci0 dev 13 function 0 "NVIDIA MCP51 IDE" rev 0xa1: DMA,  
> channel 0 configured to compatibility, channel 1 configured to 
> compatibility
> wd0 at pciide0 channel 0 drive 0: <Maxtor 6L250R0>
> wd0: 16-sector PIO, LBA48, 239372MB, 490234752 sectors
> atapiscsi0 at pciide0 channel 0 drive 1
> scsibus0 at atapiscsi0: 2 targets, initiator 7
> cd0 at scsibus0 targ 0 lun 0: <SONY, DVD RW DRU-510A, 1.0a> ATAPI  
> 5/cdrom removable
> wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 6
> cd0(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2
> pciide0: channel 1 disabled (no drives)
> pciide1 at pci0 dev 14 function 0 "NVIDIA MCP51 SATA" rev 0xa1: DMA
> pciide1: using apic 2 int 20 (irq 5) for native-PCI interrupt
> wd1 at pciide1 channel 0 drive 0: <ST3500641AS>
> wd1: 16-sector PIO, LBA48, 476938MB, 976771055 sectors
> wd1(pciide1:0:0): using PIO mode 4, Ultra-DMA mode 5
> wd2 at pciide1 channel 1 drive 0: <ST3500641AS>
> wd2: 16-sector PIO, LBA48, 476940MB, 976773168 sectors
> wd2(pciide1:1:0): using PIO mode 4, Ultra-DMA mode 5
> pciide2 at pci0 dev 15 function 0 "NVIDIA MCP51 SATA" rev 0xa1: DMA
> pciide2: using apic 2 int 20 (irq 5) for native-PCI interrupt
> wd3 at pciide2 channel 0 drive 0: <ST3500641AS>
> wd3: 16-sector PIO, LBA48, 476940MB, 976773168 sectors
> wd3(pciide2:0:0): using PIO mode 4, Ultra-DMA mode 5
> wd4 at pciide2 channel 1 drive 0: <ST3500641AS>
> wd4: 16-sector PIO, LBA48, 476940MB, 976773168 sectors
> wd4(pciide2:1:0): using PIO mode 4, Ultra-DMA mode 5
> ppb3 at pci0 dev 16 function 0 "NVIDIA MCP51 PCI-PCI" rev 0xa2
> pci4 at ppb3 bus 4
> skc0 at pci4 dev 8 function 0 "D-Link Systems DGE-530T B1" rev 0x11,  
> Yukon Lite (0x9): apic 2 int 16 (irq 7)
> sk0 at skc0 port A: address 00:17:9a:84:62:9c
> eephy0 at sk0 phy 0: 88E1011 Gigabit PHY, rev. 5
> pciide3 at pci4 dev 9 function 0 "CMD Technology SiI3512 SATA" rev 0x01: DMA
> pciide3: using apic 2 int 17 (irq 5) for native-PCI interrupt
> pciide3: port 0: device present, speed: 1.5Gb/s
> wd5 at pciide3 channel 0 drive 0: <SAMSUNG HD103UJ>
> wd5: 16-sector PIO, LBA48, 953869MB, 1953525168 sectors
> wd5(pciide3:0:0): using BIOS timings, Ultra-DMA mode 7
> pciide3: port 1: device present, speed: 1.5Gb/s
> wd6 at pciide3 channel 1 drive 0: <WDC WD10EACS-00ZJB0>
> wd6: 16-sector PIO, LBA48, 953869MB, 1953525168 sectors
> wd6(pciide3:1:0): using BIOS timings, Ultra-DMA mode 6
> pchb0 at pci0 dev 24 function 0 "AMD AMD64 0Fh HyperTransport" rev 0x00
> pchb1 at pci0 dev 24 function 1 "AMD AMD64 0Fh Address Map" rev 0x00
> pchb2 at pci0 dev 24 function 2 "AMD AMD64 0Fh DRAM Cfg" rev 0x00
> kate0 at pci0 dev 24 function 3 "AMD AMD64 0Fh Misc Cfg" rev 0x00: core  
> rev BH-F2
> isa0 at pcib0
> isadma0 at isa0
> com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
> com0: console
> com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
> pckbc0 at isa0 port 0x60/5
> pckbd0 at pckbc0 (kbd slot)
> pckbc0: using irq 1 for kbd slot
> wskbd0 at pckbd0: console keyboard, using wsdisplay0
> pcppi0 at isa0 port 0x61
> midi0 at pcppi0: <PC speaker>
> spkr0 at pcppi0
> it0 at isa0 port 0x2e/2: IT8716F rev 0, EC port 0x290
> npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
> usb1 at ohci0: USB revision 1.0
> uhub1 at usb1 "NVIDIA OHCI root hub" rev 1.00/1.00 addr 1
> mtrr: Pentium Pro MTRR support
> Kernelized RAIDframe activated
> umass0 at uhub0 port 7 configuration 1 interface 0 "Atech Flash PRO-Gear  
> XM-4U" rev 2.00/1.00 addr 2
> umass0: using SCSI over Bulk-Only
> scsibus1 at umass0: 2 targets, initiator 0
> sd0 at scsibus1 targ 1 lun 0: <USB2.0, CardReader CF, 0100> SCSI0  
> 0/direct removable
> sd0: drive offline
> sd1 at scsibus1 targ 1 lun 1: <USB2.0, CardReader SM XD, 0100> SCSI0  
> 0/direct removable
> sd1: drive offline
> sd2 at scsibus1 targ 1 lun 2: <USB2.0, CardReader MS, 0100> SCSI0  
> 0/direct removable
> sd2: drive offline
> sd3 at scsibus1 targ 1 lun 3: <USB2.0, CardReader SD, 0100> SCSI0  
> 0/direct removable
> sd3: drive offline
> softraid0 at root
> softraid0: wd1a can not read metadata version 8, expected 3
> softraid0: wd2a can not read metadata version 0, expected 3
> softraid0: wd3a can not read metadata version -1, expected 3
> softraid0: wd4a can not read metadata version 0, expected 3
> softraid0: wd6d can not read metadata version 1970570146, expected 3
> scsibus2 at softraid0: 1 targets, initiator 1
> sd4 at scsibus2 targ 0 lun 0: <OPENBSD, SR RAID 1, 003> SCSI2 0/direct fixed
> sd4: 476937MB, 512 bytes/sec, 976767923 sec total
> root on wd0a swap on wd0b dump on wd0b

Reply via email to