Commit Graph

170 Commits

Author SHA1 Message Date
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
Ruslan Ermilov
fe655281c5 Set the default manual section for sbin/ to 8. 2001-03-20 18:13:31 +00:00
David E. O'Brien
1d9153d7ad Use _PATH_DEV.
Reviewed by:	grog
2001-02-28 17:50:29 +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
458b6188cb Fix typo.
Submitted by:	Jimmy Olgeni <olgeni@uli.it>
PR:		24233

Fix typos.

Submitted by:	"Jeroen C. van Gelderen" <jeroen@vangelderen.org>
2001-01-15 22:15:05 +00:00
Greg Lehey
8b075ef933 Remove references to lockinfo.plex.
Reported by: 	dougb
2001-01-14 11:42:19 +00:00
Ruslan Ermilov
d90d7015f9 Prepare for mdoc(7)NG. 2000-12-27 14:40:52 +00:00
Greg Lehey
c25da7d469 Cosmetics.
Correct location of history file.

Change references from /dev/wd to /dev/ad.

Use more appropriate defaults for stripe size in examples.
2000-12-20 05:08:41 +00:00
Greg Lehey
5e104ad0dd roughlength: Use correct format strings. 2000-12-20 05:07:36 +00:00
Greg Lehey
0b01781882 Correct some comments.
vinum_attach: Get correct names (were being overwritten).

Submitted by:	Terry Glanfield <Terry.Glanfield@program-products.co.uk>
2000-12-20 05:05:39 +00:00
Ruslan Ermilov
b24f640551 mdoc(7) police: use canonical form of .Dd macro. 2000-12-11 15:20:31 +00:00
Greg Lehey
162b57c009 Correct the pathname of the history file.
Reported by:	Crist J . Clark <cjclark@alum.mit.edu>
2000-11-23 01:41:11 +00:00
Ruslan Ermilov
7c7fb079b9 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 16:52:27 +00:00
Ruslan Ermilov
251c176f41 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
Greg Lehey
a0d74c6e9d Document the correct default states for additional plexes of a
multi-plex volume.

Confusion reported by: many

Clarify recommendations for default plex stripe size.
2000-11-14 20:54:37 +00:00
Ruslan Ermilov
70b25a7daf Spell the `daemon' correctly. 2000-11-14 13:53:03 +00:00
Ruslan Ermilov
b5c508fba3 Use Fx macro wherever possible. 2000-11-14 11:20:58 +00:00
Greg Lehey
5a7e6cbe50 Add 'setupstate' to RAID-10 example.
Tripped-over-by:	Nicole Harrington <nicole@picturetrail.com>
2000-09-23 00:18:31 +00:00
Greg Lehey
673fac08fd Bring LDADD in line with DPADD.
Reported by:	bde
2000-09-06 04:18:16 +00:00
Greg Lehey
25bcb8d376 Clean up now that setproctitle() is in libc.
Submitted by: 	brian
2000-09-03 01:29:29 +00:00
Greg Lehey
5b36316f62 Clarify which bit of the daemon config disables configuration saves.
This is still terrible.  I need to finally implement variables.

Reported-by:	jmg
2000-06-08 07:27:35 +00:00
Greg Lehey
2550d2afdc Update description of checkparity and rebuildparity commands. 2000-06-07 04:15:40 +00:00
Greg Lehey
86ed226506 continue_revive: Set the revive blocksize correctly in the ioctl request. 2000-06-07 04:12:39 +00:00
Greg Lehey
9a9b24fca0 vinum_start: Set the revive blocksize correctly.
checkparity: Allow the -v flag to display progress.
2000-06-07 04:09:55 +00:00
Greg Lehey
b47055ad2c Add new function declarations. 2000-06-02 03:55:01 +00:00
Greg Lehey
b6847cd633 Change the default command history file from /var/tmp/vinum_history to
/var/log/vinum_history.  Also check that any existing history file is
a regular file.

Admonished-by: imp

Allow stopping long-running commands with ^C (well, SIGINTR).
Previously this would stop the program.
2000-06-02 03:54:33 +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
abda606acd attach command: allow attaching striped or parity plexes if the -f
option is given.  This will break the data in the plex.
2000-06-02 03:52:05 +00:00
Greg Lehey
36fba7e903 Add external for -i option. 2000-05-11 08:57:09 +00:00
Greg Lehey
e46f1e870a Remove description of the -v option for init and start.
Describe -i option for start.

Update description of start command (will now work on plexes).

Update discussion of choice of stripe size (don't use power of 2).

Remove references to raw devices.
2000-05-11 07:34:54 +00:00
Greg Lehey
371cbd825b Add -i (interval) option, for use with start command. 2000-05-11 07:33:53 +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
Greg Lehey
a744e0d33d start plex/subdisk:
Add -i option to delay between blocks copied, to reduce performance
   impact.

   Remove -v option, things work now.

Rewrite parity maintenance functions.

Rebuildparity: Add -v option to check whether it was broken before
rebuilding each block.
2000-05-11 07:29:09 +00:00
Greg Lehey
6eb38370fb Remove MAINTAINER. 2000-04-16 00:17:46 +00:00
Bruce Evans
07b065a591 Fixed a missing library in DPADD.
Fixed some misformattings.
2000-03-27 18:38:29 +00:00