Commit Graph

204 Commits

Author SHA1 Message Date
Greg Lehey
b4756f9967 vinum_read: Don't lock configuration from userland. If vinum(8)
crashes, the config remains locked and causes all
            subsequent start or read attempts to fail.  This is part
            of a fix for the recently reported hangs.

Approved by:  re (scottl)
2003-05-08 00:33:57 +00:00
David E. O'Brien
8d5c19ffbc Centralize _PATH_* definitions.
Submitted by:	Tim Kientzle <kientzle@acm.org> (embellished by me)
2003-05-05 22:49:23 +00:00
Poul-Henning Kamp
988c8cab31 Typo in last commit.
Spotted by:	mbr
2003-05-05 16:33:43 +00:00
Poul-Henning Kamp
12922e0086 Add a BUGS section which explains that & why vinum volumes can not be
encrypted with gbde(8).
2003-05-05 16:18:58 +00:00
Greg Lehey
b2cf87ecc1 vinum_start: Call vinum_read with correct number of parameters. 2003-05-05 08:33:36 +00:00
Greg Lehey
3a508bbd0a vinum_readpol: Get this right.
Submitted by:	Allan Saddi <allan@saddi.com>

vinum_read: White space cleanup.
2003-05-05 05:27:19 +00:00
Greg Lehey
48f14420c5 Finally implement read policies. The previous "implementation" didn't
work because it referred to plexes which were almost invariably when
referred to.  Instead, deprecate the "prefer" keyword for volumes
(though it's still there for the moment) and add a keyword "preferred"
to the plex definition.  The relationship is like this:

Old:

  vol foo ... prefer foo.p3

New:

  plex foo.p3 volume foo preferred

printconfig: Print out the "preferred" keyword for plexes where
	     appropriate.

	     Still print out "prefer" for volumes.  The kernel module
	     continues to accept this version, but it's probably not
	     going to live much longer.
2003-05-05 05:25:49 +00:00
Greg Lehey
888c270436 Rewrite of startup code:
vinum_read:
  Accept 0 parameters, hand an empty string to the kernel if so.
  Use new ioctl VINUM_READCONFIG, not VINUM_CREATE, to read config.

vinum_start: When passed 0 parameters, drop the devstat kludge and
     call vinum_read instead.  It's no longer necessary to distinguish
     between "start" and "read" if no parameters are passed, and
     probably one of them should go away.
2003-05-04 05:13:17 +00:00
Greg Lehey
e4532a7511 Remove VINUMDEBUG. vinum(8) always compiles with VINUMDEBUG to be able
to cope with kernel modules with VINUMDEBUG.
2003-05-01 07:19:29 +00:00
Greg Lehey
c44e61c6cb Add the #includes previously in individual .c files.
Change name of history file to History to avoid name conflicts.
2003-05-01 01:40:16 +00:00
Greg Lehey
d82c72d742 Move most #includes to vext.h.
Change name of history file to History to avoid name conflicts.

Don't try to make devices unless devfs has been removed.

Don't accept resetconfig command from a file.

Abused by:  Jens Schweikhardt <schweikh@schweikhardt.net>

Remove dead code (#if 0)

vinum_mirror: Don't try to create mirrors with 0 drives.

Found by: mismatch between enum kw in two different files.
2003-05-01 01:39:49 +00:00
Greg Lehey
807b7ff353 Move most #includes to vext.h.
Change name of history file to History to avoid name conflicts.

Rewrite minor number decoding.  Now we have only three types of
object: subdisks, plexes and volumes.  The encoding for plexes and
subdisks no longer reflects the object to which they belong.  The
super devices are high-order volume numbers.  This gives vastly more
potential volumes (4 million instead of 256).

Don't try to chown directories if they haven't been created.
2003-05-01 01:39:42 +00:00
Greg Lehey
3b967ba7e9 Move most #includes to vext.h.
vinum_info: Use increasing verbosity to show time spent in disk
	    driver.

Correct a comment.
2003-05-01 01:38:55 +00:00
Poul-Henning Kamp
26c4bf80c2 Update to use current version of devstat API. 2003-03-15 20:49:38 +00:00
Poul-Henning Kamp
c9260270a0 Add #include <sys/resource.h> 2003-02-16 15:31:26 +00:00
Poul-Henning Kamp
f341ca9891 Remove #include <sys/dkstat.h> 2003-02-16 14:13:23 +00:00
Poul-Henning Kamp
936cc4614b Rename bio_linkage to the more obvious bio_parent.
Add bio_t0 timestamp, and include <sys/time.h> where needed
2003-02-07 21:09:51 +00:00
Joerg Wunsch
1b915d506b While being here, remove a couple of unused "default:" labels in switch
statements, now that gcc loudly complains about them.

MFC after:	1 week
2003-01-16 23:49:34 +00:00
Joerg Wunsch
80aea80e6f Make vinum disk-related devices readable by group "operator" to match
the configuration of any other disk-like devices.

This is the non-DEVFS part which is normally not used in 5.x, but due
for MFC into 4.x.

PR:		bin/28294, bin/32588
MFC after:	1 week
2003-01-16 23:48:34 +00:00
Jens Schweikhardt
57bd0fc6e8 english(4) police. 2002-12-27 12:15:40 +00:00
Greg Lehey
ae1e3c0330 vinum_info: Correct the print formats to allow for 64 bit pointers.
Approved by:	re (jhb).
2002-12-12 02:25:30 +00:00
Tom Rhodes
ce66ddb763 s/filesystem/file system/g as discussed on -developers 2002-08-21 18:11:48 +00:00
Philippe Charnier
629e80effb The .Nm utility. 2002-07-06 19:35:14 +00:00
Greg Lehey
74fbc9bb5b Correct default location of history file.
Observed by:	Chris Bolt <chris-lists@bolt.cx>
2002-06-23 01:32:00 +00:00
Giorgos Keramidas
40e6916847 ANSIfy a few prototypes, thus fixing a few warnings.
Reviewed by:	grog
2002-06-09 02:20:58 +00:00
Tom Rhodes
3468b317cb more file system > filesystem 2002-05-16 04:10:46 +00:00
Poul-Henning Kamp
e6d8584942 Remove unneeded include.
Sponsored by:	DARPA & NAI Labs.
Submitted by:	mckusick
2002-05-13 11:42:27 +00:00
Greg Lehey
942081a325 vinum_start: examine storage array devices, not just disks.
Submitted by:	Holger Kipp <holger.kipp@alogis.com>
PR:		37458
MFC after: 	5 days
		(to get 4.6 code freeze)
2002-04-26 04:21:59 +00:00
Dag-Erling Smørgrav
d397408818 Usage style sweep: spell "usage" with a small 'u'.
Also change one case of blatant __progname abuse (several more remain)
This commit does not touch anything in src/{contrib,crypto,gnu}/.
2002-04-22 13:44:47 +00:00
Jun Kuriyama
a9f14ef33f Change reference URLs.
Submitted by:	Olivier Tharan <olivier.tharan@idealx.com>
PR:		docs/37094
MFC after:	1 week
2002-04-16 01:18:25 +00:00
David E. O'Brien
2d68bf45bf Default to WARNS=2.
Binary builds that cannot handle this must explicitly set WARNS=0.

Reviewed by:	mike
2001-12-04 02:19:58 +00:00
Greg Lehey
ff433237bd Reinstate VINUMDEBUG. Removing it also removes some diagnostic commands.
I should reconsider whether I just leave them in without #ifdef VINUMDEBUG.
2001-10-15 01:32:48 +00:00
Ruslan Ermilov
8083488514 mdoc(7) police: restore fix in rev. 1.52; .Dt should be in CAPITALS. 2001-09-11 10:00:48 +00:00
Greg Lehey
65aeaec006 Use a better stripe size in the examples.
Noted by:	Sean Eric Fagan <sef@kithrup.com>
2001-09-09 02:23:06 +00:00
Thomas Moestl
c4a5ef6ef3 Add some features to libdevstat, and overhaul the interface a bit:
1.) prefix all functions in the library with devstat_ (compatability
    functions are available for all functions that were chaned in an
    incompatible way, but are deprecated).
2.) Add a pointer to a kvm_t as the first argument to functions that
    used to get their information via sysctl; they behave the same
    as before when NULL is passed as this argument, otherwise, the
    information is obtained via libkvm using the supplied handle.
3.) Add a new function, devstat_compute_statistics(), that is intended
    to replace the old compute_stats() function. It offers more
    statistics data, and has a more flexible interface.

libdevstat does now require libkvm; a library depedency is added, so
that libkvm only needs to be explicitely specified for statically linked
programs.
The library major version number is bumped.

Submitted by:	Sergey A. Osokin <osa@freebsd.org.ru>, ken (3)
Reviewed by:	ken
2001-08-04 18:25:48 +00:00
Ruslan Ermilov
09915d609a mdoc(7) police:
Keep document title (.Dt) in CAPITALS, as required by the mdoc(7) manpage.
2001-07-04 14:18:31 +00:00
Greg Lehey
1e1442dda0 Correct typo.
Submitted by: Normand Leclerc <leclercn@videotron.ca>
2001-06-11 00:43:26 +00:00
Greg Lehey
93efa030a8 *sigh* We can't remove VINUMDEBUG entirely, since we include kernel
header files and sources which depend on it.  For userland, define
VINUMDEBUG here.  Also remove a now superfluous #ifdef.
2001-05-23 23:27:08 +00:00
Greg Lehey
0bfac85774 Remove cruft. 2001-05-23 23:25:50 +00:00
Greg Lehey
da50f5ed31 Remove -DVINUMDEBUG. vinum(8) now always supports debug options if
the kernel module is built that way.
2001-05-23 05:24:53 +00:00
Greg Lehey
66ea29917c Remove #ifdef VINUMDEBUG. vinum(8) now always supports debug options
if the kernel module is built that way.

Remove the gross debug device/non-debug device hack used to recognize
whether the kernel module was in sync with the userland module.
2001-05-23 05:23:03 +00:00
Greg Lehey
b3e6c926ea vinum_debug: Check for kernel module debug support, print error
message if not present.
2001-05-23 05:22:19 +00:00
Greg Lehey
ad64de5d8d Remove #ifdef VINUMDEBUG. vinum(8) now always supports debug options
if the kernel module is built that way.

vinum_info: Check for kernel module debug support, print error message
if not present.
2001-05-23 05:21:22 +00:00
Greg Lehey
218692e305 Update description of the stripe size created by vinum_stripe,
vinum_mirror, vinum_raid4, vinum_raid5.

Correct typos.

Show new output of the 'list' and 'ls' commands.

Update examples to use 279 kB stripe sizes instead of 256 kB.

Clarify some text.

Remove the description of the 'invalid ioctl' messages which now no
longer occur.

Add a description of the 'retryerrors' keyword.
2001-05-22 02:40:40 +00:00
Greg Lehey
8fded8ae87 Major tidy up. Add explicit header files, thus enabling the .c files
to avoid including the kernel headers.

Move a number of definitions of userland functions from
dev/vinum/vinumext.h.

Desired by:	   bde

This commit is the first of a general cleanup of the header files..
It won't be enough to make bde happy.

Remove vinum_perror and associated DEVBUG definition.
2001-05-22 02:39:48 +00:00
Greg Lehey
598607ea9a Tidy up header files. Don't include stuff we don't need.
Use userland expurgated versions of kernel structures, since that's
what the ioctls return now.

Remove vinum_perror.

main: Check kernel version with userland version in _vinum_conf.  This
      field is a constant which gets incremented every time the
      kernel-userland interface changes.  This enables vinum(8) to
      check for the correct kernel version and to produce a useful
      message if it doesn't match.  For previous versions, which don't
      have a version number, the length of the structure is different,
      so we can recognize it via the EINVAL return from ioctl.

Supply count parameter to tokenize().

Change method of recognizing active devfs: replace devfs_is_active
with (complemented) no_devfs.

make_devices: remove references to devfs.  If we're running devfs,  we
don't need to call make_devices at all.

vinum_makedev (user command 'makedev'): Print a warning message if
devfs is running and don't do anything else.
2001-05-22 02:39:24 +00:00
Greg Lehey
5814a0b1e9 Tidy up header files. Don't include stuff we don't need.
Remove vinum_perror.

Modify 'list' brief printout to fit in 80 columns.

Modify 'ls' brief printout to show the drive to which the subdisk
before instead of the plex offset, which is usually less interesting.
The verbose printout remains unchanged.

Use userland expurgated versions of kernel structures, since that's
what the ioctls return now.

Move checkupdates here to simplify header file mess.
2001-05-22 02:38:52 +00:00
Greg Lehey
e829a4ea32 Tidy up header files. Don't include stuff we don't need.
Remove 'vinum_perror'.

Only call make_devices if we're not running devfs.

Use userland expurgated versions of kernel structures, since that's
what the ioctls return now.

Update help list, which was lagging behind reality.

checkupdates: move to list.c to simplify header file mess.

vinum_stripe, vinum_mirror, vinum_raid4, vinum_raid5: change the
default stripe size from 256 k to 279 k, thus hopefully spreading
superblocks more evenly.
2001-05-22 02:38:11 +00:00
Ruslan Ermilov
82d7ff4e72 mdoc(7) police: fix markup. 2001-04-27 10:32:48 +00:00
Ruslan Ermilov
0a5779d45b - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:33:27 +00:00