All:

I just wanted to take a moment thank the OpenBSD community and dev team.
Great tools such as pf(4), pfsync(4), etc. enabled me to perform a
zero-downtime upgrade of a very large core router last week.

Per my original patch set to enable this raid(4) RAIDFrame enabled
upgrade, there are few notes to share regarding actual usage:

1) When booting from the CD, it is important to interrupt the 2nd stage
boot loader sequence and:

"boot bsd -a"

This will prompt you for the root device, which should be "rd0a",
otherwise the RAID_AUTOCONFIG will take it as raid0a  

Or:

Just before your last shutdown before upgrading, use raidctl(8) to
modify the raidset to "-A yes dev" instead of "-A root dev".

2) There is one more additional patch that needs to occur in install.sub
I ran into a small bug src/distrib/miniroot/install.sub

http://www.openbsd.org/cgi-bin/cvsweb/src/distrib/miniroot/install.sub?rev=1.406&content-type=text/x-cvsweb-markup

DKDEVS=$(scan_dmesg "${MDDKDEVS:-/^[sw]d[0-9][0-9]* /s/ .*//p}")

This can be overridden (I'm only realizing now) by EXPORT'ing
MDDKDEVS="" at run time.  However, the long term fix (if/when raid(4) is
updated), is to fix the regex.

Unfortunately, I'm having some trouble updating this BRE REGEX.
re_format(7) hackers feel free to pitch in.

OpenBSD sed(1) doesn't support ERE (Extended Regular Expressions), but
egrep(1) of course does.  Normally I would switch this to:

/^(rai|[sw])d[0-9][0-9]* /s/ .*//p

And with "E" grep I would get:

$ egrep '^(rai|[wd])d[0-9][0-9]* ' /var/run/dmesg.boot 
wd0 at pciide1 channel 0 drive 0: <WDC WD800JD-75LSA0>
wd1 at pciide1 channel 1 drive 0: <WDC WD800JD-75LSA0>
raid0 (root): (RAID Level 1) total number of sectors is...
raid1 (root): (RAID Level 1) total number of sectors is....

But apparently the "start(thisString|[thatCharActerClass])rest" syntax
doesn't work in non-ERE mode.  Maybe someone can help out there.

Also, updating the kernel (/bsd), the 2nd stage boot (/boot) is tricky
and a manual process when using this CD to upgrade:

3) To make bsd.mp+raidframe a "Install Set" option, declare /  export:
MDSETS="bsd.mp+raidframe" to have install.sub suck it into the $THESETS
append list.  

According to the upgrade.sh, this will install it into your root dir
(raid0a?) "/" path; which is wrong (I use a symlink for my kernel), but
at least you'll be able to copy it to wd0a:/antiraid/bsd and
wd0b:/antiraid/bsd ... or:

Wait for upgrade.sh to finish up and remount /dev/cd0a manually again
against /mnt2.

I have updated this image to the latest OpenBSD 4.0-stable sources.
Tags: -r "OPENBSD_4_0", -D "11/06/06 10:58:26 EST".

http://people.collaborativefusion.com/~seklecki/openbsd_4.0_stableUpdate_wRAIDFrame.iso

SHA1: b7e33764ab96e1a2db0d125d07e9628367680858
Size: 175331328

-- 
Brian A. Seklecki <[EMAIL PROTECTED]>
Collaborative Fusion, Inc.
Subject: If you please: OpenBSD 4.0/i386 ISO (-stable w/ RAIDFrame)
From: "Brian A. Seklecki" <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Organization: Collaborative Fusion, Inc.
Message-Id: <[EMAIL PROTECTED]>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 7bit
X-Mailer: Evolution 2.2.3-10mdk 
Date: Sat, 11 Nov 2006 05:28:53 -0500

SHA1 (public_html/obsdcd_4.0_updateWRAID.iso) =
36c5fe6cb3cd0af6ded8e25a24e2f70f4faaa6cf

36c5fe6cb3cd0af6ded8e25a24e2f70f4faaa6cf  obsdcd_4.0_updateWRAID.iso
        
-rw-r--r--  1 lavalamp  lavalamp  175319040 Nov 11 05:25
public_html/obsdcd_4.0_updateWRAID.iso

Reply via email to