[Responding to my own question:

  http://lists.us.dell.com/pipermail/linux-poweredge/2009-January/038405.html

...for Googlers' reference after receiving a few inquiries
regarding whether or not I found a solution to my problem]


Turns out I was not using the write-cache settings I
thought I was.  Write-cache was in use and that is why MegaCli
refused to allow modifications to the configuration (until that
cache was cleared, which could only be done from the PERC
<Ctrl+R> utility, which was unacceptable).

Our PE 2900 storage server build process now includes:

 1. Enter the PERC BIOS <Ctrl+R> utility, and Clear the
    configuration.

 2. Boot with the OpenSolaris Live CD, get MegaCli from a USB
    flash drive, create the RAID-0 arrays via:

    $ MegaCli -CfgEachDskRaid0 WT NORA Direct NoCachedBadBBU -a0

    # find the controller name...

    $ cfgadm -al

    # ...and try to get Solaris to re-scan the bus (this seems 
    # to not be necessary sometimes)

    $ cfgadm -c configure c4

 3. Procede with the OpenSolaris install.


With those cache settings, I was able to pull a disk while
writing to the ZFS pool it was part of, insert a new disk,
configure it with MegaCli, and replace it with 'zpool replace'.

Note that if you're testing by re-inserting the same disk, or
another disk with PERC metadata on it, you'll need to use
"MegaCli -CfgForeign -Clear -a0" to clear the foreign
configuration.  And if ZFS recognizes it as a valid member of the
pool, it won't automatically resilver, and may start to
accumulate errors.  To get those errors over with sooner rather
than later, run a 'zpool scrub'.  After the scrub finishes you'll
probably want to run a 'zpool clear'.


To double-check the write-cache settings (w/ example output
showing what it should look like):

$ MegaCli -LDGetProp -Cache -Lall -a0
                                     
Adapter 0-VD 0(target id: 0): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 1(target id: 1): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 2(target id: 2): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 3(target id: 3): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 4(target id: 4): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 5(target id: 5): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 6(target id: 6): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU
Adapter 0-VD 7(target id: 7): Cache Policy:WriteThrough, ReadAheadNone, Direct, 
No Write Cache if bad BBU


-- 
   - Tim Utschig <[email protected]>

_______________________________________________
Linux-PowerEdge mailing list
[email protected]
https://lists.us.dell.com/mailman/listinfo/linux-poweredge
Please read the FAQ at http://lists.us.dell.com/faq

Reply via email to