oster
14de6c2418
Cleanup shutdown code - garbage collect (now) unused shutdownhooks() stuff.
1999-03-27 01:26:37 +00:00
oster
efe288e520
Correct a component label problem where a RAID 1 set with a
...
failed component would not configure properly in certain situations.
1999-03-18 03:02:38 +00:00
oster
2ec2c2045f
Cleanup rf_RewriteParity() and rf_VerifyParity(). Nuke unused stuff,
...
and make more readable.
1999-03-14 22:10:46 +00:00
oster
414b788837
Disallow interrupting parity re-writes or copybacks by removing PCATCH
...
from the tsleep()'s (they probably shouldn't have been there in the
first place!). Making parity re-writing and copybacks interruptable
will require re-designing how a few things are done (e.g. how memory
is freed for structures shipped off to routines that run asynchronously
relative to the calling routine). Fix a few other tsleep's while we're at it.
1999-03-14 21:53:31 +00:00
oster
cd0a696176
Cleanup raidattach: move rf_boot's functionality to raidattach, and
...
nuke rf_boot(). Cleanup raidopen().
1999-03-09 03:53:18 +00:00
oster
e39fe5e2fe
Cleanup unused cruft.
1999-03-09 03:52:41 +00:00
oster
29daf0c77d
rf_update_component_labels() now lives here. Re-work clean-bit
...
support a little: clean-bits now also get frobbed on partition
opening/closing, rather than just at device configuration and device
unconfiguration. Schedule shutdownhooks() stuff for nukage at a later
date, since it isn't really necessary any more.
1999-03-09 02:59:25 +00:00
oster
585c77594e
Move rf_update_component_labels() from here to rf_netbsdkintf.c.
1999-03-09 02:57:29 +00:00
oster
98d8c12355
Update for recent changes including component label support, clean
...
bits, rebuilding components in-place, adding hot spares, shutdownhooks, etc.
1999-03-02 03:18:48 +00:00
oster
ee9187f136
After a vn_close(), set the vnode * to NULL so we don't try closing it
...
again later.
1999-02-27 03:43:20 +00:00
oster
a76f56098c
Do the VOP_UNLOCK() on an initialized vp, rather than random garbage.
1999-02-27 01:48:13 +00:00
oster
65be57243f
Minor cleanups and code rearranging. Now knows a little about component
...
labels and how to deal with hot-adding spare components. Still work in
progress -- component labels and hot-adding are not enabled (yet).
1999-02-24 00:00:03 +00:00
oster
be9eca67c8
Cleanup/remove unused cruft. First kick at component labels and clean bits.
...
Still work in progress. New code is there, but not enabled yet.
1999-02-23 23:57:53 +00:00
oster
07b6b89dce
Move vnode cleanup code into one place. Cleanup a bit.
1999-02-23 23:55:29 +00:00
oster
0d29172def
Do a VOP_UNLOCK() before a vn_close().
1999-02-23 23:53:37 +00:00
oster
6d72c8f0e7
Minor cleanups that got missed last time through.
1999-02-11 01:23:32 +00:00
oster
0014588545
Phase 2 of the RAIDframe cleanup. The source is now closer to KNF
...
and is much easier to read. No functionality changes.
1999-02-05 00:06:06 +00:00
oster
58f7de552d
Nuke more bits of RAIDframe "demo" code. We're not "demoing" here,
...
we're doing the Real Thing!
1999-01-26 04:40:03 +00:00
oster
472e649cd8
More simulator bits going bye-bye.
1999-01-26 04:05:01 +00:00
oster
c52883118d
This stuff is no longer needed. Mostly simulator bits.
1999-01-26 03:56:21 +00:00
oster
a37be85529
rf_ccmn.h no longer needed. Nuke it's inclusion from rf_disks.c.
1999-01-26 03:49:49 +00:00
oster
d94a2c5b2a
These files are not used in the kernel driver. We don't need them any more.
1999-01-26 03:07:10 +00:00
oster
1eecf8e491
RAIDframe cleanup, phase 1. Nuke simulator support, user-land driver,
...
out-dated comments, and other unneeded stuff. This helps prepare
for cleaning up the rest of the code, and adding new functionality.
No functional changes to the kernel code in this commit.
1999-01-26 02:33:49 +00:00
explorer
edd259d12e
Make it so raidframe will only perform synchronous writes, and async
...
reads. This avoids a problem where many writes will cause the driver
to allocate way too much memory.
This needs to change to a queueing system later, which will provide a
way to limit the memory consumed by the driver.
Without these changes, raidframe would use 24M or more on my machine when
the buffer cache dumped all its dirty blocks. Now it uses around 200k
or so.
1999-01-15 17:55:52 +00:00
thorpej
d8f3aefec7
Use M_RAIDFRAME.
1999-01-14 22:49:05 +00:00
oster
4128f9df1e
Duh... check that malloc() hasn't returned a NULL *before* we zero the buffer,
...
not after. Pointed out by Michael Graff.
1999-01-14 20:29:38 +00:00
oster
e392d933c8
Clean up some debugging stuff, and make it compile without warnings
...
with -DDEBUG on alphas.
1998-12-22 20:03:14 +00:00
oster
1b04131eff
Try a bit harder to detect the physical failure of a component, and to
...
mark that component as dead. Physical failures are handled much better now.
1998-12-03 15:14:40 +00:00
oster
3f3d8e85e6
If a configuration fails due to a non-existant spare, remember to release
...
any previously allocated components before bailing. Credit to Manuel Bouyer
for noticing this.
1998-12-03 15:06:25 +00:00
oster
679de7e878
Fix (potential) referencing of null pointer in (verbose) debugging mode.
1998-12-03 14:58:24 +00:00
oster
b66ca92f4a
Initialize (to NULL) a variable in rf_CvscanPromote().
1998-11-18 15:13:51 +00:00
mycroft
7eac22153a
Use types.h, endian.h and limits.h to configure the RAIDframe
...
types correctly for all hardware platforms.
1998-11-16 04:14:10 +00:00
hubertf
3f1c86b59e
compile with DEBUG=1
1998-11-15 00:01:24 +00:00
drochner
a0c0e7eff1
fix egcs warning
1998-11-13 13:47:56 +00:00
drochner
acdd660ace
fix callback type
1998-11-13 13:45:15 +00:00
simonb
a9c167b273
prototype un-prototyped functions
1998-11-13 11:51:55 +00:00
simonb
8e893eff9e
Add braces around 'if' to pacify egcs
1998-11-13 11:48:26 +00:00
oster
38a3987b69
RAIDframe, version 1.1, from the Parallel Data Laboratory at
...
Carnegie Mellon University. Full RAID implementation, including
levels 0, 1, 4, 5, 6, parity logging, and a few other goodies.
Ported to NetBSD by Greg Oster.
1998-11-13 04:20:26 +00:00