Commit Graph

55 Commits

Author SHA1 Message Date
oster 2a80a0fbe1 make 'configureMutex' be a lockmgr lock instead of a simple lock.
The result is MUCH fewer complaints with kernels compiled with LOCKDEBUG.
2002-08-08 02:55:36 +00:00
oster 6ad082845f Let's just say that the way things were stored in the array for the
debugging buffer made it much less useful than it appears.  More memory
for other things now.
2002-08-04 03:22:07 +00:00
oster 354a8ea84b Improve error messages. 2002-08-03 01:24:03 +00:00
oster 35940367a4 Cleanup configuration and auto-configuration information printing.
Thanks to mrg for the suggestions.
2002-08-03 00:55:54 +00:00
oster 61015077a7 Backout some "new stuff" that accidentally got included on the last commit. 2002-08-03 00:38:42 +00:00
oster 752e8eb5c8 - remove "#include "rf_memchunk.h"
- nuke the call to rf_ConfigureMemChunk() from rf_driver.c
2002-08-02 03:42:33 +00:00
oster 4c591ca7bc Don't print the value of protectedSectors all the time. 2002-07-24 02:17:14 +00:00
oster ef989419d9 Nuke a redundant check. 2002-07-13 20:51:54 +00:00
oster 69fb0af058 Nuke a redundant check that raidPtr->valid is true. 2002-07-13 19:35:34 +00:00
oster af9b7112ab #if 0 rf_SetReconfiguredMode() since it is unused now, but may be
needed someday.
2002-01-07 01:58:03 +00:00
lukem 2565646230 don't need <sys/types.h> when including <sys/param.h> 2001-11-15 09:47:59 +00:00
lukem a3746e00b7 add RCSIDs 2001-11-13 07:11:12 +00:00
oster dad0d4578c Nuke a couple of unused extern variable declarations. 2001-10-04 17:31:01 +00:00
oster 765e00d3de Step 2 of the disentanglement. We now look to <dev/raidframe/*> for
the stuff that used to live in rf_types.h, rf_raidframe.h, rf_layout.h,
rf_netbsd.h, rf_raid.h, rf_decluster,h, and a few other places.
Believe it or not, when this is all done, things will be cleaner.

No functional changes to RAIDframe.
2001-10-04 15:58:51 +00:00
oster 99020323e6 Nuke the 5 NULL parameters from rf_DoAccess(). Observe that 4 of
the variables are passed directly to rf_AllocRaidAccDesc(), and the 5th
isn't even used.  Hunt them down and nuke them too.
2001-07-27 03:30:07 +00:00
thorpej cf56c44a86 bzero -> memset 2001-07-18 06:45:33 +00:00
oster b36a1a085e For the RF_ASSERT() and RF_PANIC() macros, call a function to do the
sprintf, instead of doing the sprintf in the macros.  This means just
1 copy of each of the error messages, chopping about about 16K off the
size of an i386 kernel.  Thanks to Simon Burge and Enami Tsugutomo
for providing the inspiration to do this.
2000-12-15 02:12:58 +00:00
oster 3ee0550572 convert tsleep()->ltsleep(), which makes the kernel complain less
when compiled with LOCKDEBUG.
2000-09-21 01:45:46 +00:00
oster 0b63accce0 Merge rf_update_component_labels() and rf_final_update_component_labels(). 2000-06-04 02:05:13 +00:00
oster f1f5c4d00e Fix a couple of typos. (Thanks Wiz! :) ) 2000-05-29 01:43:04 +00:00
oster e38b4355e2 Abort any parity re-writes before unconfiguring a RAID set.
Partially addresses PR#10182.
2000-05-28 03:00:31 +00:00
oster ddebc1cad0 Move rf_UnconfigureVnodes to rf_netbsdkintf.c where it will be more at home.
Add prototype to rf_kintf.h, and nuke old prototypes from rf_disks.c and
rf_driver.c .
2000-03-07 02:28:05 +00:00
oster 8cde772948 Oops.. Need to note the parity status when we unconfigure.
Noted by Aaron J. Grier. (Thanks!)
2000-02-29 16:54:29 +00:00
oster 8d63540a8c When we close autoconfigured components, we need to note that they
are no longer in 'autoconfigured' status.
2000-02-25 17:14:18 +00:00
oster bdd659fc7f Deal with unconfiguring components in the autoconfigure case. 2000-02-24 23:39:21 +00:00
oster d91ecfbcfd Be more aggressive about updating component labels in the event
of a real component failure (or a simulated failure):
- add 'numNewFailures' to keep track of the number of disk failures
since mod_counter was last updated for each component label.
- make sure we call rf_update_component_labels() upon any component failure,
real or simulated.
2000-02-23 03:44:02 +00:00
oster 0c43bf18f0 - cleanup of more component label code
- make current default label values available everywhere
- make sure numBlocks and blockSize in component labels get initialized
for all component labels
- check for component size to be smaller than or equal to the partition size
when autoconfiguring
2000-02-23 02:04:21 +00:00
oster 445591e874 Get recent changes into the tree:
- make component_label variables more consistent (==> clabel)
- re-work incorrect component configuration code
- re-work disk configuration code
- cleanup initial configuration of raidPtr info
- add auto-detection of components and RAID sets (Disabled, for now)
- allow / on RAID sets (Disabled, for now)
- rename "config_disk_queue" to "rf_ConfigureDiskQueue" and properly prototype
in rf_diskqueue.h
- protect some headers with #if _KERNEL  (XXX this needs to be fixed properly)
  and cleanup header formatting.
- expand the component labels (yes, they should be backward/forward compatible)
- other bits and pieces (some function names are still bogus, and will get
changed soon)
2000-02-13 04:53:57 +00:00
oster f2a8aaee02 Garbage collect unused code. 2000-01-09 03:44:33 +00:00
oster 87ec1ad21b Nuke dependency on rf_diskthreads.h 2000-01-09 03:15:59 +00:00
oster 4a54cff7d7 Nuke dependencies on rf_cpuutils.h. 2000-01-09 03:14:32 +00:00
oster c8730b35e6 - move a bunch of function prototypes to rf_kintf.h
- general cleanup of a number of prototypes that were scattered around.
2000-01-09 01:29:27 +00:00
oster cdb6add0f7 Nuke desc->tid. 2000-01-09 00:00:18 +00:00
oster 04719e3adc - nuke calls to rf_get_threadid() and associated #include
- change a bunch of debugging printfs from
  "[%d] ...", tid   (where tid is the "thread id")
to
  "raid%d: ...", raidPtr->raidid
- other minor rototillage
2000-01-08 22:57:30 +00:00
oster e5ce17d0eb Nuke RF_DECLARE_GLOBAL_THREADID, rf_setup_threadid(), rf_shutdown_threadid(),
and rf_assign_threadid().  rf_threadid.h, your days are numbered.
2000-01-07 03:25:34 +00:00
oster 5f144eaa4b Shorten IO_BUF_ERR macro by one (unused) arg. 2000-01-07 03:03:44 +00:00
oster bd19af5aad Nuke what's left of the DFSTRACE stuff. 1999-12-07 02:54:08 +00:00
oster e65f9b7c87 More cleanup. DKUSAGE (what little was left of it) goes bye-bye. 1999-12-07 02:40:27 +00:00
oster a38b721e5f Nuke the last few bits of RF_DEBUG_ATOMIC that should have
disappeared a while back.
1999-12-07 02:13:28 +00:00
oster 128e2e90c5 Nuke some duplicate code. 1999-12-03 03:18:45 +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 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 eca431e87c Nuke configuration of ETimer stuff during main configuration. 1999-08-13 03:25:01 +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 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 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 07b6b89dce Move vnode cleanup code into one place. Cleanup a bit. 1999-02-23 23:55:29 +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