oster
fe5b29ca42
Nuke unused prototype.
1999-09-08 02:01:55 +00:00
oster
83abb87d9a
Garbage collect more unused stuff.
1999-09-05 03:05:55 +00:00
oster
9c01870db1
Remove more unused stuff.
1999-09-05 02:54:09 +00:00
oster
cfbdda8843
Garbage collect some more stuff.
1999-09-05 02:24:58 +00:00
oster
6158faa69d
Cleanup a bit more.
1999-09-05 01:58:11 +00:00
oster
e57673d0d4
Remove one of the two bzero calls in RF_Calloc -- the 2nd one doesn't
...
buy us anything at all.
1999-09-05 01:46:35 +00:00
oster
d8144e5848
More cleanup of unused stuff. This time we nuke a bunch of memory
...
allocation stuff.
1999-09-04 21:11:21 +00:00
oster
cfd861fcd8
Minor cleanup of (now) unneeded RF_UTILITY checks.
1999-09-04 16:26:30 +00:00
oster
b1615831d2
Nuke some unused code which, were it enabled, might be useful for
...
performance measurement, but which would cause data corruption.
1999-08-26 02:40:27 +00:00
oster
770de7bb5a
Print a error message instead of panicing in rf_RecoveryPQFunc().
1999-08-15 03:44:46 +00:00
oster
d516e7b571
Make these compile with RF_INCLUDE_RAID6.
1999-08-15 02:36:40 +00:00
oster
ff6d7dd494
Cleanup a bit.
1999-08-15 02:36:03 +00:00
oster
07cc4855f1
Minor cleanup. No functional changes.
1999-08-14 23:34:18 +00:00
oster
4ba14d22b0
Fix an 'off-by-one' error in a RF_ASSERT which meant that a reconstruct
...
would panic in the case where the stripe width was 1 block.
1999-08-14 21:44:24 +00:00
oster
740b9848cc
Decrease the number of outstanding IO's threashold slightly.
...
The previous value may have been too high in some instances.
1999-08-14 03:47:07 +00:00
oster
6409e641a6
Remove a 'struct proc *'-passing abomination that's been bugging me
...
for quite some time.
1999-08-14 03:10:03 +00:00
oster
4a058e82c5
Correct and/or improve detection of bogus row/column values
...
passed in via ioctls.
1999-08-14 02:41:36 +00:00
oster
db2eaf18cf
rf_sys.h does not need to be #included in any of these files, and, actually,
...
is no longer needed at all.
1999-08-13 03:41:52 +00:00
oster
1ec5208866
This file is no longer needed.
1999-08-13 03:31:20 +00:00
oster
1aa6ce1041
Garbage collect rpcc().
1999-08-13 03:27:46 +00:00
oster
02acd1910a
First kick at cleaning up the RF_ETIMER code. New timer handling code
...
provided by Peter Galbavy via OpenBSD.
1999-08-13 03:26:55 +00:00
oster
eca431e87c
Nuke configuration of ETimer stuff during main configuration.
1999-08-13 03:25:01 +00:00
oster
5cab826918
Clean up reconstruction accounting a bit. While it worked before, it was
...
slightly broken in the case where the RAID set did not support reconstruction.
1999-08-13 01:43:33 +00:00
oster
33e458640f
Garbage collect unused struct rf_test_acc.
1999-08-11 02:20:35 +00:00
oster
31b98d3572
When reporting the status of a component during configuration,
...
provide more intuitive information about whether a component is clean
or not.
1999-08-10 22:56:20 +00:00
oster
620eda50c7
Don't allow reconstructs, copybacks, or forced failures of components if
...
using a RAID 0, since RAID 0 can't handle those sorts of things.
1999-08-10 22:46:59 +00:00
oster
0b08c839eb
Don't go ape if there is a problem verifying the parity. Note the condition
...
and inform the user (as opposed to panicing the system!).
1999-08-10 22:19:27 +00:00
oster
49efd10006
Oops. Make minor change that I forgot when adding the parity check ioctl.
1999-08-10 21:41:37 +00:00
oster
a3aefdaee3
Add support for easily checking the parity status from userland.
...
Also: spl protect rf_RewriteParity().
1999-08-10 18:18:30 +00:00
oster
a531d8c31e
Trying to rebuild parity on a degraded set is bogus, so don't allow that.
...
Also, check sooner for a RAID 0 set, since rewriting parity makes no
sense there either.
1999-08-10 01:53:26 +00:00
oster
e0c8203cb3
Nuke unused #define.
1999-08-03 22:07:39 +00:00
oster
5cef006d40
Need to splbio()/splx() protect some of the reconstruction stuff.
...
Without this, we have potentially bad interatctions with the pool
code.
1999-07-21 03:15:26 +00:00
oster
ce7cb7114d
rf_UnconfigureVnodes() needs to be called in the DO_RAID_FAIL macro.
1999-07-19 01:36:07 +00:00
oster
0c7600ca4e
sectorsPerStripeUnit should be larger than 0. If it isn't, simply fail.
...
(Thanks to Thor Lancelot Simon for noting the problem).
1999-07-19 01:35:19 +00:00
oster
324c76b3d9
Once upon a time, long long ago, there was a "fix" added to the
...
RAIDframe driver to stop it from eating too much kernel memory when
writing data. But that fix had a nasty side-affect of hurting write
performance (*much* more than I thought it would). These changes nuke
that "fix", and instead put in a more reasonable mechanism for limiting
the number of simultaneous IO's which can be happening for each RAID device.
The result is a noticeable improvement in write throughput. The End.
1999-07-08 00:45:23 +00:00
thorpej
5f1ede624f
Make the kthread API a bit friendlier to loadable kernel modules.
1999-07-06 21:51:22 +00:00
oster
86abd11d42
Remember to pass down the proc pointer when adding a hot spare.
...
(Thanks to Martin J. Laubach for helping track this one down.)
1999-06-13 20:36:17 +00:00
oster
8c39e1bf02
When adding a hot spare, remember to lock down the main raidPtr
...
structure before mucking with its contents.
1999-06-04 02:02:39 +00:00
oster
60769ea563
At config time, initialize a small amount of space for the disk queues
...
corresponding to the hot spares. We'll need that space when a spare is
actually added. Huge Thanks to Martin Laubach for helping track this down.
1999-06-04 01:51:00 +00:00
oster
3af0ce9e19
Don't count two problems with a single component as two
...
component failures! Also: remember to configure the disk queues for
the spares -- failure to do that is Bad(tm).
Huge Thanks to Martin Laubach for helping track this down.
1999-06-04 01:50:01 +00:00
ad
daf0e5b05c
Replace two instances of TNF copyright with one (was replicated for two
...
separate contributers).
1999-05-13 21:46:17 +00:00
oster
4882ae464f
Fix a couple of compiler warnings on the Alpha. Pointed out by Tim Rightnour.
1999-04-12 19:39:59 +00:00
oster
9f560505d4
Allow re-writing parity on a RAID 0 to trivially succeed, and to set the
...
clean bit. This is somewhat bogus as RAID 0 does not have any parity,
but is a slightly cleaner than other solutions, and makes the handling
of clean bits for RAID 0 consistent with the handling of clean bits at
other RAID levels.
1999-04-07 14:17:10 +00:00
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