Commit Graph

108 Commits

Author SHA1 Message Date
asami
a4491a591a Ported to 2.2-current. Uses [bc]devsw_add(), and is also now a proper
pseudo-device.

Doesn't use devfs correctly yet.
1996-03-21 04:13:25 +00:00
asami
8b9cb8fedd Fix one warning and fix one bug found while looking at another warning (but
caused by a different reason):

. #ifndef __FreeBSD__ around check for negative size, FreeBSD size_t is
  unsigned

. Disable mirror/parity if interleave size is 0 (i.e., serial concatenation).
1996-01-31 11:25:46 +00:00
asami
565f8b6987 Mirror support. When CCDF_MIRROR is set:
(1) The reads are always done from the first n/2 disks.

(2) Each write is done twice, to the "data" disk (in the first half) and
    the "mirror" disk (in the second half).

ccdbuffer() now takes an extra argument (struct ccdbuf **) and stores
the pointer to ccdbuf in there.  In case of a mirrored write, it
allocates and stores two pointers.  The "residual" is also doubled
for mirrored writes so that ccdiodone() can correctly tell when all
the writes are done.
1996-01-31 03:28:21 +00:00
asami
7b3fa6ae27 Prepare for adding mirroring. Check for flags (mirror forces uniform),
reduce the size to half, etc.  Right now it only uses the first n/2 disks
for both read and write.
1996-01-30 22:34:53 +00:00
asami
23f4e3fcb8 Prepare to add support for parity. Report the post-parity size,
allocate space around parity blocks.
1996-01-02 23:32:54 +00:00
asami
bcd430b53f Added $Id$. 1995-12-28 00:22:45 +00:00
asami
dbb28d7d47 Changes to make it work on FreeBSD-2.1. 1995-12-27 10:53:21 +00:00
asami
d34ddb975e ccd.c and ccd.4 from NetBSD-current circa 12/25/95. 1995-12-27 10:49:19 +00:00