Subject: Re: Why my life is sucking. Part 2.
To: Alan Barrett <apb@cequrux.com>
From: Luke Mewburn <lukem@wasabisystems.com>
List: current-users
Date: 01/18/2001 23:18:25
On Thu, Jan 18, 2001 at 10:34:29AM +0200, Alan Barrett wrote:
> On Wed, 17 Jan 2001, Manuel Bouyer wrote:
> > What I've done is to make /etc/rc.d/raidframe run after fsck (no problems as
> > I only use autoconfig). This way the rebuild (run in background anyway)
> > doesn't compete with fsck for disk access. This speeds things up a lot.
> 
> We could split /etc/rc.d/raidframe into two halves, with the
> configuration part ("raidctl -c") running before fsck, and the parity
> reconstruction part ("raidctl -P") running in the background after
> fsck.

I think that this is a good idea; I'll take a look at it as part of
another idea I have...

...which is to change the parity rebuild system to only attempt to
rebuild configured raid partitions. I don't have /etc/raidX.conf
files; I rely upon raid auto-config to DTRT. This means that parity
rebuilds won't happen unless I hack my scripts.

Currently /etc/rc.d/raidframe does:

	for cfg in /etc/raid[0-9].conf /etc/raid[0-9][0-9].conf ; do
		[ ! -f $cfg ] && continue
		dev=${cfg##*/}
		dev=${dev%%.conf}
		raidctl -P $dev
	done

and I think this could be changed to something functionally equivalent
to:
	for $dev in `iostat -x | awk '/^raid/ { print $1 }'`; do
		raidctl -P $dev
	done

We can't do this in the current script because iostat and awk are in
/usr/{,sbin}, but Simon Burge has some (uncommitted) work which should
allow me to get the same lists of `active' disks that `iostat -x`
provides via /sbin/sysctl. On the other hand, we could just split the
functionality now, and make the parity-rebuild component depend upon
"mountcritremote" (which gets /usr).

Luke.