Commit Graph

286 Commits

Author SHA1 Message Date
oster
525f4a9bed Backout a line that accidentally got included when the .h reorg went in. 2001-10-06 00:47:46 +00:00
oster
035a63f6d3 More #if 0's bite the dust. 2001-10-05 15:41:23 +00:00
oster
9d1d665dac Nuke some #if 0 stuff. 2001-10-05 15:33:12 +00:00
oster
d00ed4116f Tidy up the #includes a bit. (coulda/shoulda done that with last commit.) 2001-10-04 17:42:29 +00:00
oster
2621bd1124 rf_options.h isn't needed here. 2001-10-04 17:41:17 +00:00
oster
aa7a54f593 If rf_options.h needs to be include it, then include it. Don't rely on
another .h file to pull it in.
2001-10-04 17:39:18 +00:00
oster
dad0d4578c Nuke a couple of unused extern variable declarations. 2001-10-04 17:31:01 +00:00
oster
32c731329a These have been completely replaced by raidframevar.h and raidframeio.h. 2001-10-04 16:08:51 +00:00
oster
fe686dfde7 Setup installation mechanism for <dev/raidframe/raidframevar.h> and
<dev/raidframe/raidframeio.h>
2001-10-04 16:04:16 +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
46a6eb1477 Step 1 of the disentangling of RAIDframe's .h files:
raidframevar.h - contains bits of rf_types.h, rf_layout.h,
rf_netbsd.h, rf_raid.h, and rf_decluster.h.

raidframeio.h - contains the bits needed for doing IOCTL's w/
RAIDframe.

These bits will be visible to userland.
2001-10-04 15:43:57 +00:00
oster
d7a81df519 RF_DEV2RAIDID isn't used anywhere anymore. Bye bye. 2001-09-26 03:01:19 +00:00
oster
de43684ab7 - rf_types.h doesn't really need to pull in rf_archs.h
- for *.c, don't rely on rf_types.h to pull in rf_archs.h
2001-09-26 02:52:57 +00:00
oster
e475673b85 Nuke an unused typedef. 2001-09-25 02:56:13 +00:00
wiz
456dff6cb8 Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
thorpej
1cbbd5c37c Disable all of the RF_ASSERT()s by default, enabling them if the
RAID_DIAGNOSTIC option is specified in the kernel configuration
file.
2001-09-01 23:50:43 +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
228b23427f bcmp -> memcmp 2001-07-18 06:46:46 +00:00
thorpej
cf56c44a86 bzero -> memset 2001-07-18 06:45:33 +00:00
oster
81f5c58b58 If we're closing the last partition on a RAID set and the system is
being shutdown, then unconfigure the RAID set too.  This fixes a number
of issues with doing proper unconfigures/shutdowns of multi-level RAID
sets.

Thanks to Jason Thorpe and Bill Squier for the ideas/suggestions on
how/where to do this, and to Bill Squier for testing.
2001-07-16 15:50:27 +00:00
oster
bdfad3793f We don't need to check for raidautoconfig here, so nuke it and
clean up a little.
2001-06-21 03:07:04 +00:00
oster
76d322c58c #if out a few more bits that arn't required if we are not doing
PQ or RAID6.
2001-06-20 03:09:23 +00:00
oster
0e8f8213af A bunch of these bits are only needed for the EVENODD stuff.
Shaves a little better than 1K off the size of an i386 kernel.
2001-06-19 03:25:16 +00:00
oster
669f5cc5a5 It's silly to need a parity rebuild after a reconstruction has completed.
If we've just reconstructed a disk, then the parity is known to
be correct.  (XXX doesn't hold for RAID 6!)
2001-06-14 02:35:56 +00:00
mrg
054673b07c #endif /* takes no argument */ 2001-06-08 12:51:17 +00:00
oster
856e0a920e A value of 1 for tracks/cylinder in the disklabel is apparently sub-optimal.
Thus we choose "4 * number_of_columns" as a more reasonable
value (until someone comes up with something better).
This pretends to properly address PR#11989.
2001-04-05 02:48:51 +00:00
mrg
8e0434ce99 include <sys/param.h> before <sys/ioctl.h> 2001-02-03 12:51:10 +00:00
oster
cc2a28f2c0 Un-'__P'ify. 2001-01-27 20:42:20 +00:00
oster
1949425ffc Nuke some bogus debug code that was already '#if 0'ed out. 2001-01-27 20:18:55 +00:00
oster
e6d8ca0dee Cosmetic cleanup of some comments, and nuke an unused #define. 2001-01-27 20:10:49 +00:00
oster
75ea8b428e Having moved some of the bits needed by raidctl into rf_configure.c, we
no longer need those bits here.  In particular, this file is now only
used in the kernel, and that allows us to clean up a lot of cruft.
2001-01-27 19:34:43 +00:00
oster
3edd34f0be More #if's. This needs some serious rototillage, but a few #if's will
suffice for now.
2001-01-27 02:13:34 +00:00
oster
c4a426333f My.. what a twisty little maze of #defines and dependencies. Some of this
code is used for more than anticipated, and I missed a few checks last
night.  Thanks to Bernd Ernesti for poking me about this.
2001-01-26 14:06:16 +00:00
oster
e47b177bc0 Nobody calls these bits if we arn't doing RAID5 with rotated spare stuff.
Add an #if.
2001-01-26 05:16:58 +00:00
oster
1763f954c7 These bits are only needed for the interdecluster stuff.. wrap them
with an #if.
2001-01-26 05:09:13 +00:00
oster
7833c33e99 Whoops.. Leave them on.. (for now.) 2001-01-26 04:43:16 +00:00
oster
a40eef11ac Give the parity declustering code their own 'RAID arch' types, and
allow us to turn them off if desired.
2001-01-26 04:40:03 +00:00
oster
61a2ee28fb Lots of stuff here that is only used for some of the 'fancier' RAID types.
Don't compile it if we arn't going to use it.
2001-01-26 04:27:16 +00:00
oster
bcc70a3f37 Clean up some INDENT warnings. (yes, these have been there for a while!) 2001-01-26 04:14:14 +00:00
oster
0a5ca1547d Various parts of this file are only needed by the even/odd and PQ
RAID types.  Don't include those bits if we arn't doing even/odd or PQ stuff.
2001-01-26 04:05:08 +00:00
oster
9880e186ec Don't build the stuff in this file if RF_INCLUDE_EVENODD is not defined. 2001-01-26 03:50:53 +00:00
oster
c77d3c20a8 Ensure we update the 'partitionSize' field of the component labels
when doing a reconstruct or a copyback.  If we don't, junk might be
there, and that could cause the component to be not correctly
autoconfigured on reboot.  Thanks to Simon Burge for helping track this down.
2001-01-26 02:16:24 +00:00
fvdl
d040bd5908 Return error in the case of using ODIOCGDINFO or ODIOCGDEFLABEL when
the number of partitions is > OLDMAXPARTITIONS. This is better
than silently truncating the label (don't want to silently throw
away partitions when using an old disklabel binary on a label with
> 8 partitions). From Enami Tsugutomo.
2001-01-08 02:03:45 +00:00
fvdl
e2d1c1f926 Adapt all disk devices in MI directories to handle ODIOC* calls
for ports that have bumped MAXPARTITIONS (and thus define
__HAVE_OLD_DISKLABEL).
2001-01-07 18:09:01 +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
7a8eea351b Fix a couple of warnings about uninitialized variables. Thanks go to
Frank van der Linden for pointing these out.
2000-12-05 01:35:56 +00:00
fvdl
b6d9ce390e Comment out 2 cases of unitialized variable use (only used when
debugging is switched on, though).
2000-12-04 11:35:46 +00:00
chs
c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
oster
d349cdf1ef Move disk_busy() and disk_unbusy() to more sane locations. Values
reported by 'systat iostat' and friends are now much more correct for
RAIDframe devices.  Thanks to Andrew Doran for poking me about this,
and for suggestions on and review of the changes.
2000-10-20 02:24:45 +00:00
oster
f9a49b32bf Don't touch a failed component at all. Thanks to Robert Elz (kre) for
noting the problem and providing additional comments.
2000-10-17 03:39:41 +00:00