Commit Graph

39 Commits

Author SHA1 Message Date
Peter Wemm
a2141d7a53 Fix some 64 bit warnings. You can't fit a pointer in an int. 2003-10-26 04:47:31 +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
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
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
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
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
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
Alfred Perlstein
729d4f1db0 Fix vinum for both devfs and non-devfs systems.
userland tool:

  Use the vfs.devfs.generation sysctl to test for devfs presense
  (thanks phk!) when devfs is active it will not try to create the
  device nodes in /dev and therefore will not complain about the
  failure to do so.

  Revert the change in the #define for VINUM_DIR in the kernel
  header so that vinum can find its device nodes.

  Replace perror() with vinum_perror() to print file/line when
  DEVBUG is defined (not defined by default).

kernel:

  Don't use the #define names for the "superdev" creation since
  they will be prepended by "/dev/" (based on VINUM_DIR), instead
  use string constants.

  Create both debug and non-debug "superdev" nodes in the devfs.

Problem noticed and fix tested by: Martin Blapp <mblapp@fuchur.lan.attic.ch>
2001-02-20 22:07:36 +00:00
Greg Lehey
8b075ef933 Remove references to lockinfo.plex.
Reported by: 	dougb
2001-01-14 11:42:19 +00:00
Greg Lehey
5e104ad0dd roughlength: Use correct format strings. 2000-12-20 05:07:36 +00:00
Greg Lehey
7d3e5fc5f4 Add new function dumpconfig: dump the configuration information
directly off the drives.

This command shows a minor problem: it requires that the device nodes
exist, whereas kernel Vinum does not.  Thus dumpconfig may show no
configuration for certain drives which are up and happily running.
This is documented in the man page.
2000-06-02 03:53:33 +00:00
Greg Lehey
672ef75209 vinum_info: Use the correct field to determine whether trace entries
are read or write.

Bug-introduced-in:	Revision 1.26

Show percentage complete in brief status of reviving and initializing
subdisks.
2000-05-11 07:32:09 +00:00
Poul-Henning Kamp
beff200af8 B_READ is gone, check for BIO_READ instead.
Not tested.
2000-03-20 17:12:45 +00:00
Greg Lehey
d07abdea38 Increase the time we'll wait for a reviving disk to carry on and not
be marked as stalled, from 1 second to 5 seconds.

Implicitly-sanctioned-by:	jkh
2000-03-01 07:20:32 +00:00
Greg Lehey
4b62b353ed vinum_ldi: Honour the 'recurse' flag and show the subdisks on this
drive if it is set.

vinum_lvi: Change line spacing.  This is still not right.

Change checks for striped or RAID-5 plexes to a macro 'isstriped',
which now also includes RAID-4.

Change checks for RAID-5 plexes to a macro 'isparity', which now also
includes RAID-4.

vinum_lsi: If the subdisk is initializing or reviving, don't wait a
whole second to check whether it's advancing; wait in increments of 50
ms up to 1 second.  This makes for a barely perceptible delay.

Approved-by:  jkh
2000-02-29 06:20:57 +00:00
Greg Lehey
95b9eac9db Explicitly type large scalar parameters to avoid compilation warnings
on alpha.

Submitted-by:	Bernd Walter <ticso@cicely.de>

Replace %q formats with %lld.

Desired-by:	bde

Remove #ifdef RAID5

vinum_lsi: If a subdisk is in 'reviving' state, check the status of
the revive and report the status of the revive.  In verbose mode,
display the pid of the reviver.
2000-01-05 05:56:47 +00:00
Greg Lehey
0ddf8b8823 Change the name of the v flag variable from 'verbose' to 'vflag',
indicating the multiple use (verbose or verify).

vinum_ldi:
  Show active requests for the drive if -v is specified.
  White space cleanup.

vinum_lsi:
  Show the progress of an init command if -v is specified.

vinum_info:
  Print the number of active requests.

  Print out loginfo_sdio and loginfo_sdiodone log entries.
1999-10-13 03:27:55 +00:00
Greg Lehey
cbad9196fb Brucify comments.
vinum_lpi: Add information about progress of rebuildparity and
           checkparity commands.

listconfig: Print object counts in a different format, don't refer to
the internal number of slots allocated:

Caused-confusion-to:  Norbert Meissner <norbert.meissner@daimlerchrysler.com>

vinum_info: Change format of device numbers so that they fit in the
column (ignore high-order minor number bits, which aren't really of
much interest).
1999-09-28 23:02:14 +00:00
Peter Wemm
7f3dea244c $Id$ -> $FreeBSD$ 1999-08-28 00:22:10 +00:00
Greg Lehey
bfb9bed7bf vinum_info(): Add support for logging subdisk I/O. 1999-08-24 02:32:57 +00:00
Greg Lehey
b6f7fc2505 vinum_info: add code to print out lock events.
modify format of other event printouts.
1999-08-14 06:20:20 +00:00
Greg Lehey
4391e2334d Import RAID-5 code.
Add Cybernet copyright.

OK'd-by:     Chuck Jacobus <chuck@cybernet.com>

vinum_ldi:
  Calculate the percentage used correctly.

vinum_lsi:
  Flag detached subdisks.

vinum_info:
  Request info: get the major and minor numbers and print them
  correctly.

list_defective_objects:
  New function, for listing objects which aren't up after vinum_start.

  Requested-by: Steve Taylor <staylor@cybernet.com>
1999-08-07 08:19:15 +00:00
Greg Lehey
a490e68466 Change the name of the s option to indicate that it wears more than
one hat.

Change formats as the result of changes in drive structure.
1999-07-02 08:00:31 +00:00
Greg Lehey
b1cdcf849c vinum_ldi:
Show the available sectors relative to the user-available part of
  the drive (don't include the config space at the beginning).  This
  stops an empty drive reporting only 99% available.

Requested-by: staylor

printconfig:

  Show sizes in sectors with the suffix 's' instead of the
  now-deprecated 'b'.
1999-06-22 05:53:57 +00:00
Greg Lehey
0f76af59ba printconfig:
split into vinum_printconfig (interactive) and printconfig (called
  from vinum_printconfig and from vinum_create when starting an
  interactive update.
1999-05-02 08:02:03 +00:00
Greg Lehey
cc2023a984 When looking at all objects, look at all objects.
vinum_lsi:
  Print rough size of plex in parentheses.
  Print drive info with -v option (previously required -V).
1999-04-17 04:12:33 +00:00
Greg Lehey
95869fbbd3 Change the meaning of the combination of -s and no -v option in the
list functions.  Previously, it would produce a non-verbose listing of
the objects followed individually by a statistics listing.  Now it
produces only a one-line-per-object statistics listing.
1999-03-31 08:43:40 +00:00
Greg Lehey
25641fed48 info command: Remove opencount parameter, print value of open flag. 1999-03-13 07:44:17 +00:00
Greg Lehey
04898b56e9 Change the format of the lists to reflect loss of pid field.
Show open state as a flag.

vinum_ldi: Show available space in short form listing.
1999-03-02 07:01:26 +00:00
Greg Lehey
52e80fad69 Update to reflect major changes in vinum kernel module 1999-01-21 00:45:11 +00:00
Greg Lehey
a1f358450e Fix problems compiling without -DVINUMDEBUG
Reported by: dg
1999-01-06 04:07:49 +00:00
Peter Wemm
6d553badba Tweaks as a result of having vinum statically buildable in a kernel. 1998-12-28 16:32:39 +00:00
Greg Lehey
07e7cd96c5 Correct u_int_64 casting to remove warnings in printf() 1998-11-03 06:39:39 +00:00
Greg Lehey
5ecb82d898 Show revive pointer in percentage complete as well as absolute value. 1998-11-02 04:12:51 +00:00
Greg Lehey
8386a2b309 list.c:
Add dump of last requests with 'info -V'.  This requires the requests
  to be enabled with 'debug 8'.
1998-10-21 08:39:57 +00:00
Bruce Evans
794389cf5d Don't assume that time_t is long. 1998-10-17 13:02:46 +00:00
Greg Lehey
8644f7188f Import base vinum userland sources 1998-09-16 05:57:36 +00:00