jdolecek
539f3bcc23
change ccio_ndisks and sc_nccdisks of struct ccd_ioctl from int to u_int
...
introduce hard limit on number of disks which can be contcatenated togetger,
CCD_MAXNDISKS
2001-08-05 11:20:13 +00:00
thorpej
c8b4ac1b17
bcopy -> memcpy
...
bzero -> memset
2001-07-07 17:04:01 +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
enami
07702f68a6
Introduce new filesystem type FS_CCD so that an operator can mark the
...
ccd component partition. Note that the ccd driver still allows partitions
of any types as components since an on-disk BSD disklabel isn't available
on some port.
2000-04-05 04:03:20 +00:00
augustss
169ac5b3c1
Remove register declarations.
2000-03-30 12:41:09 +00:00
enami
aa8b5ebd93
On initialization failure, free all the storage allocated to store
...
component pathnames rather than the last one.
2000-03-16 03:54:01 +00:00
enami
34d63b5623
Since we now only allocate this one, no longer necessary to check and free().
2000-02-08 12:56:00 +00:00
fvdl
0b1963121a
Add Kirk McKusick's soft updates code to the trunk. Not enabled by
...
default, as the copyright on the main file (ffs_softdep.c) is such
that is has been put into gnusrc. options SOFTDEP will pull this
in. This code also contains the trickle syncer.
Bump version number to 1.4O
1999-11-15 18:49:07 +00:00
chs
f13d3f5b3b
from jason:
...
avoid biodone()ing the original buf twice when a component buf
gets an error. fixes PR 8704.
1999-11-03 16:04:03 +00:00
thorpej
dd5ae858e0
We really only need *one* componenet buffer pool...
1999-08-11 02:41:02 +00:00
mjacob
fefcc128bf
a kindler gentler fix
1999-03-04 02:38:19 +00:00
mjacob
7790083b17
adjust format args for compiler changes
1999-03-04 02:20:13 +00:00
thorpej
94962b67c7
Fix some printf format problems on Alpha.
1999-02-12 00:46:11 +00:00
thorpej
c6aa25bfa1
Fix a st00p1d bug I introduced in rev 1.57, which would cause any activity
...
on non-0 CCD units to crash the system.
1999-01-21 00:35:15 +00:00
christos
b62b5bc092
Make this compile again with -DDEBUG
1999-01-12 12:49:53 +00:00
thorpej
0272b2ab8e
Whole lotta cleanup wrt. how configuration data is stored internally, and
...
just lockmgr(), not our home-grown locking functions.
1999-01-12 00:21:47 +00:00
thorpej
d272bb0024
Handle the case where ccdbuffer() fails due to memory shortage. Build
...
a fifo of component buffers, and free them if ccdbuffer() fails. Once
all component buffers are build, run through the fifo and fire off the
requests to the components.
1998-11-13 01:00:15 +00:00
thorpej
092c201932
Simplify calling of ccdbuffer() now that the mirroring code is nuked.
1998-11-13 00:35:57 +00:00
thorpej
ab27c3f89c
Return EINVAL if invalid flags are passed.
1998-11-13 00:31:02 +00:00
thorpej
00172c10d5
Nuke the mirroring code. RAIDframe is about to go in, and is a much
...
better mirroring solution.
The ccd driver will stay, even in the presence of RAIDframe, for applications
where just RAID-0 is needed (much smaller code footprint).
1998-11-13 00:26:19 +00:00
thorpej
b6ac7c9b6b
Must use PR_NOWAIT when allocating component buffers.
1998-11-12 22:39:57 +00:00
thorpej
4356136193
Use the pool allocator for component buffer headers.
1998-07-31 01:23:56 +00:00
thorpej
902855d60e
Fix int32_t overflow with large serially concatenated components,
...
from Noriyuki SODA <soda@sra.co.jp>, PR #5729 .
1998-07-09 20:56:12 +00:00
ross
331fee623e
Sweep up some miscellaneous leftover lite2 integration shrapnel.
1998-03-01 07:15:39 +00:00
enami
9b770726e8
Fix message printed in case (b) in last commit; what actually shouldn't
...
exceeds is not a size of partition but end of partition.
1998-02-22 07:14:30 +00:00
enami
512a01869c
Check disklabel just read from disk and warn if:
...
(a) total sector size is different from the size of ccd, or
(b) size of a partition exceeds the size of ccd.
1998-02-22 06:50:08 +00:00
thorpej
fd01cb624f
Allow a ccd component to be on any partition type.
1998-02-06 08:13:07 +00:00
jtc
d6ae2cd7fd
Fix tipo inherited from old version of TNF copyright template.
1997-10-09 08:03:42 +00:00
thorpej
939e074dcc
Implement DIOCGDEFLABEL.
1997-10-08 23:05:22 +00:00
fair
c27c286843
%x -> 0x%x
1997-08-04 10:00:11 +00:00
kleink
d72a3b2da1
Leftover from last commit: require us to be initialized when a DIOCGDINFO
...
ioctl(2) is issued; the uninitialized disklabel pointer might get dereferenced
otherwise.
1997-06-26 16:28:34 +00:00
thorpej
4cea35eb42
In ccdioctl(), consolidate checks for "open for writes" and "initialized".
1997-06-26 04:25:50 +00:00
thorpej
e06bb29b00
Two changes to ccdsize():
...
- If the partition was previously open, don't do the open/close steps.
(Sync with other disk drivers.)
- foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-23 23:59:53 +00:00
mycroft
8f8b0d91e5
Remove bogus use of splhigh(), and apparently unneeded bzero().
1997-03-12 22:31:37 +00:00
thorpej
9a815ed696
A performance optimization, inspired by a conversation with Thor Simon:
...
- Keep a freelist of component buffer headers, defaulting
to 8 headers per component (tunable with the CCDNBUF
kernel compile option).
- When allocating a component buffer, try to pull a header
off the freelist first, falling back on MALLOC() if the
freelist is empty. Use MALLOC() rather than malloc(),
because it will attempt to short-cut the allocation before
actually making a full-blown malloc() call.
- Keep statistics on how many component buffer headers have
been allocated and how many of those allocations have
resulted in freelist misses.
With these changes, I observed measurable decreases in system and
wall clock time on operations on an 8G ccd, as well as a measurable
drop in the time spent in ccdbuffer() (measured with kernel profiling).
1997-01-30 04:00:52 +00:00
thorpej
bb60822446
Fix OBOB in ccdopen() partition range check.
...
From Klaus Klein <kleink@layla.inka.de>, PR #3161 .
1997-01-30 03:32:56 +00:00
thorpej
7770d7c428
Compute the componet number properly so that error reporting is somewhat
...
meaningful. Bug noticed by Marshall Midden <m4@nts.umn.edu>.
1996-12-18 19:22:46 +00:00
christos
86373f8cf9
backout kprintf changes
1996-10-13 01:37:04 +00:00
christos
5d85fa8122
printf -> kprintf, sprintf -> ksprintf
1996-10-10 22:25:05 +00:00
thorpej
49c5d29ee0
Fix bogus return value in ccdopen(); it failed to indicate an error
...
condition if:
- ccd was not initialized
- partition did not exist
1996-05-05 04:21:14 +00:00
christos
cee6ac0ce3
remove sys/cpu.h
1996-04-22 01:26:39 +00:00
christos
e1930da21b
Remove dependencies to dev_conf.h and the file itself.
1996-03-30 23:05:46 +00:00
mrg
2c329c900b
%d -> %ld in a few places...
1996-03-24 01:26:57 +00:00
christos
d318abdbc4
prototypes for ccd audio and ncr5380
1996-03-07 15:00:07 +00:00
thorpej
ee8a2c002f
Copyright assigned to The NetBSD Foundation.
1996-02-28 01:01:17 +00:00
thorpej
91bd533c48
Avoid deref'ing a bad pointer in ccdopen(). This could happen if
...
any partition other than RAW_PART is opened before configuring the
ccd. Bug pointed out by Matthew Green.
1996-02-11 18:04:01 +00:00
hpeyerl
fb81581990
detatch this spelling mistake from this source file.
1996-02-10 22:27:22 +00:00
thorpej
b686e830b8
Fix typo, from Thorsten Frueauf <frueauf@ira.uka.de>.
1996-02-06 18:15:19 +00:00
thorpej
732dd94a83
Add experimental data mirroring support, derived from code written by
...
Satoshi Asami and Nisha Talagala. For details on using data mirroring,
see the ccd(4) manual page.
1996-02-01 20:47:13 +00:00