Commit Graph

35867 Commits

Author SHA1 Message Date
Julian Elischer
cb11191c01 Slight cleanup of code resurected for union mounts..
Submitted by: Tony Finch <dot@dotat.at>
1999-03-03 02:35:51 +00:00
Alan Cox
dd2622a8cd To avoid a conflict for the vm_map's lock with vm_fault, release
the read lock around the subyte operations in mincore.  After the lock is
reacquired, use the map's timestamp to determine if we need to restart
the scan.
1999-03-02 22:55:02 +00:00
Andrey A. Chernov
5365c4e788 add more MLINKS 1999-03-02 22:53:24 +00:00
Greg Lehey
b8d3ec490d Change SAVECONFIG ioctl: it now writes an int parameter. 1999-03-02 22:00:19 +00:00
Julian Elischer
850c9afd03 Make comment match code. 1999-03-02 21:23:38 +00:00
Warner Losh
ec0211864c Better logging when the Geometry register probe fails. 1999-03-02 20:56:07 +00:00
Julian Elischer
8b3bd42341 Remove inapropriate use of VOP_ISLOCKED()
This produced races resulting in panics and filesystem corruptions
under some circumstances.

Reviewed by: luoqi chen <luoqi@freebsd.org>
Reviewed by: Kirk McKusick <mckusick@mckusick.com>
Submitted by: Matt Dillon <dillon@freebsd.org>
1999-03-02 20:26:39 +00:00
Semen Ustimenko
7e8dac41cb Add new kernel option:
options NTFS
1999-03-02 20:26:02 +00:00
Joerg Wunsch
d7a28702a3 Make window(1) actually work again. It has been broken for quite some
time now.

For whatever reason, the kernel seems to have generated SIGIOs
previously without an initial fcntl(...,F_SETOWN), but does no longer.
This caused window(1) to wait indefinitely for input.

Also, undo rev 1.3 of wwspawn.c, it was not well-thought, and
apparently not even tested at all.  The blindly (even in a nonsensical
place like the comment on top of the function) applied replacement of
vfork() by fork() totally ignored that window(1) *does* abuse the
feature of vfork() where a modification of the parent's address space
is possible (in this case, to notify the parent of an erred exec*).
Also, with vfork(), it is guaranteed that the parent is only woken up
after the exec*() happened, where the replacement by fork() made the
parent to almost always become runnable again before the child, in
which case the parent simply told `subprocess died'.  Unfortunately,
working around _this_ seems to be a lot more of redesign work compared
to little gained value, so i think relying on the specifics of vfork()
is the simpler way.

Submitted by:	Philipp Mergenthaler <un1i@rz.uni-karlsruhe.de>
1999-03-02 19:08:09 +00:00
David Greenman
37cd370c97 Correct casts in vtophys and avtophys to be vm_offset_t. 1999-03-02 16:20:39 +00:00
Daniel C. Sobral
c7bf325ce2 Don't treat empty lines as end-of-file in include(). (I can't
believe this bug is still here... :-( )
1999-03-02 16:16:57 +00:00
Roger Hardiman
69c9ce13b9 Put back the bktr update to generate /dev/vbi
which I managed to delete yesterday.
1999-03-02 16:04:27 +00:00
KATO Takenori
dc461a09bb Merge with sys/i386/conf/files.i386 revision 1.224. 1999-03-02 14:03:21 +00:00
KATO Takenori
4f0282c066 Sync with sys/i386/conf/Makefile.i386 revision 1.140. 1999-03-02 14:01:33 +00:00
Bruce Evans
1cd8a2c51a Restored rev.1.2, which was clobbered by rev.1.4 (don't print "Making
info file ..." except in verbose mode).
1999-03-02 13:04:00 +00:00
KATO Takenori
24d3fe2bd8 Fix for LINE30 option. This option was not tested under new console
driver.

Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-03-02 12:34:24 +00:00
Joseph Koshy
8a7d0c6907 Typo fix.
PR:		docs/10348
Submitted by:	Chris Costello <chris@holly.dyndns.org>
1999-03-02 07:27:01 +00:00
Greg Lehey
b9848eb0e3 Change some .Ar macros to .Pa.
Describe /dev/vinum/control*

Describe drive "referenced" state.

Remove warning about kldunload; it seems to work now.

Still more descriptions of how to debug things.
1999-03-02 07:03:30 +00:00
Greg Lehey
6cecf4e4b2 Document "stop" command with no parameters.
Document "printconfig" and "saveconfig" commands.

Add warning about running "create" multiple times.
1999-03-02 07:02:29 +00:00
Greg Lehey
327f3f618f Take definitions of VINUMMOD and WRONGMOD from v.c. 1999-03-02 07:02:09 +00:00
Greg Lehey
aa57f12990 Move definitions of VINUMMOD and WRONGMOD to vext.h.
Wait4 zombies.

make_devices: Don't try if the /dev directory is mounted read-only.
	      Create daemon superdevice /dev/vinum/controld.

Format a couple of multiline comments conformant with style(9).
1999-03-02 07:01:51 +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
5e2b0861ec resetconfig: don't log the "obliterated" message, the kernel does that
for us.

	     Rebuild the (almost empty) /dev/vinum directory.

vinum_start:  remove superflous "read" parameter when starting with no
	      parameters.

vinum_stop:  without an argument, stop Vinum and remove the kld if
	     it's idle.

vinum_saveconfig: New command to save configuration.
1999-03-02 07:00:57 +00:00
Greg Lehey
587ce8d9ae Correct some diagrams
Remove pid field from struct sd, struct plex and struct volume

Add flags VF_STOPPING, VF_OPEN and VF_DAEMONOPEN
1999-03-02 06:58:09 +00:00
Greg Lehey
57f9112565 sizespec: allow negative values (which signal error conditions).
catch missing (NULL) parameters.
1999-03-02 06:57:48 +00:00
Greg Lehey
a11c3a2c73 Change the name of drive state "uninit" to "referenced": it only
occurs if we have a dangling pointer to a drive.
1999-03-02 06:57:30 +00:00
Greg Lehey
75fff3fead Change printf() calls to log() calls.
set_sd_state: allow stop command to stop a reborn subdisk.
1999-03-02 06:57:08 +00:00
Greg Lehey
72dec6f286 Change printf() calls to log() calls. 1999-03-02 06:56:39 +00:00
Greg Lehey
80035a4cf1 Add keywords "size", synonym for "length", and "max".
Check for NULL name parameters.
1999-03-02 06:56:05 +00:00
Greg Lehey
39ce6e429e Change printf() calls to log() calls.
expand_table: Zero out newly allocated tables
1999-03-02 06:55:44 +00:00
Greg Lehey
1e14d0037d Add keywords "size", synonym for "length", and "max". 1999-03-02 06:55:18 +00:00
Greg Lehey
33e00380bc Change printf() calls to log() calls.
Change VINUM_SAVECONFIG: it now requires a parameter.  0 means
"configuration updates are finished, please save", and 1 means "please
just save the config".  This second meaning is invoked by the new
"saveconfig" command to vinum(8).
1999-03-02 06:54:57 +00:00
Greg Lehey
f569eff522 Change printf() calls to log() calls.
Recognize "referenced" drives by the lack of a slash in the device
name, not by a NUL character.

vinum_scandisk: return error indication (ENOENT if we can't find any
vinum drive, otherwise 0).

VINUM_SAVECONFIG: change parameters.
1999-03-02 06:54:30 +00:00
Greg Lehey
02dbb6666a New function return_drive_space
Add definitions of vinum_inactive and free_vinum, formerly local to
vinum.c

vinum_scandisk now returns int (error number)
1999-03-02 06:53:42 +00:00
Greg Lehey
e0e19a088b change printf() calls to log() calls.
Don't save config while we're reading it from disk.

Change the way we handle the daemon: if we can't communicate with it
for 1 second (which is possible), start a new one.  The daemon saves
its pid in daemonpid; on each iteration of the main loop the daemon
checks whether it's still in favour.  If not, it silently exits.
Also, when trying to communicate with the daemon, check daemonpid
first.  If it's set to 0, don't even try.
1999-03-02 06:53:15 +00:00
Greg Lehey
a0a8b3768e Change printf() calls to log() calls.
Rename the VF_KERNELOP to VF_DISKCONFIG and checkkernel () to
checkdiskconfig (), which better describes their function.

Disable configuration updates if we have an error reading in the
configuration.  This stops a "shoot-in-foot" problem where a mistake
can cause the configuration to be obliterated.

Tidy up some messages, which included superfluous \ns.

Recognize RAID-5 configuration information even in the non-RAID-5
version.  This fixes shoot-in-foot problems where starting the wrong
version of vinum would kill RAID-5 plexes.

Recognize drives that have been referenced, but for which no physical
location is known.  This is part of a modification which will
ultimately allow incrementally reading configurations.  Such drives
will have a device name "unknown".

New function return_drive_space () returns space to a drive.
Previously this was part of free_sd ().

give_sd_to_drive: don't do it if the subdisk needs more space than the
drive has available.

config_sd: if reading config from disk, accept plex offset, drive
offset and length specs of -1 to indicate error conditions.

parse_config: return ENOENT if the "read" command doesn't find any
drives.

remove_sd_entry: don't do it, even by force, if it's open.

If the size of a striped or RAID-5 plex is not an integral multiple of
the stripe size, trim the size until it is.

reinstate update_volume_config, which had atrophied, to recalculate
the size of a volume if a plex has shrunk due to stripe size
considerations.
1999-03-02 06:52:47 +00:00
Greg Lehey
571aa87170 Change printf() calls to log() calls.
vinumattach: Zero out tables after allocating them

Modify procedure at unload: if a vinum(8) has the superdev open, don't
close down.  If only the daemon has it open, send the daemon a stop
request and wait for it to close the superdev, then unload.

In order to do this, create a second superdev which is opened by the
daemon.  The open and close routines set a different bit in
vinum_conf.flags; otherwise the treatment is identical.

Remove opencount field in vol structure; replace by a flag bit, since
we can't count the number of opens.

Remove dead LKM grunge.
1999-03-02 06:52:11 +00:00
Greg Lehey
88c8f9c911 Change the name of drive state "uninit" to "referenced": it only
occurs if we have a dangling pointer to a drive.
1999-03-02 06:51:48 +00:00
Kirk McKusick
38e28fd66b Reorganize locking to avoid holding the lock during calls to bdwrite
and brelse (which may sleep in some systems).

Obtained from:	Matthew Dillon <dillon@apollo.backplane.com>
1999-03-02 06:38:07 +00:00
Matt Jacob
c4e8e42c98 Print actual density code as well as string for density- I dunno about others,
but I sure remember 0x15 easier than 'ECMA 17'. Also handle density codes
0 (default) and 0x7f ('same') as special cases.
1999-03-02 06:27:59 +00:00
Alan Cox
e5f251d2d3 Remove the last of the share map code: struct vm_map::is_main_map.
Reviewed by:	Matthew Dillon <dillon@apollo.backplane.com>
1999-03-02 05:43:18 +00:00
Warner Losh
5369eb85ca Merge patch to ufs_vnops.c's ufs_rename to the copy of ufs_rename that
lives in ext2_vnops.c for ext2fs.  Also remove cast from comparision.
Bruce pointed out that it was bogus since we'd force a signed
comparision when we really wanted an unsigned comparison.
1999-03-02 05:31:47 +00:00
Guy Helmer
86bf56f58b Fix reference to rpc.yppasswdd.
PR:		docs/10171
1999-03-02 04:14:53 +00:00
Alexander Langer
c5e72606a7 Improve error message wording when attempting to link to a non-existent
file on the local host.

PR:		10042
Submitted by:	Chris Costello <phoenix@calldei.com>
1999-03-02 04:14:33 +00:00
Kirk McKusick
eef33ce9bd When fsync'ing a file on a filesystem using soft updates, we first try
to write all the dirty blocks. If some of those blocks have dependencies,
they will be remarked dirty when the I/O completes. On systems with
really fast I/O systems, it is possible to get in an infinite loop trying
to flush the buffers, because the I/O finishes before we can get all the
dirty buffers off the v_dirtyblkhd list and into the I/O queue. (The
previous algorithm looped over the v_dirtyblkhd list writing out buffers
until the list emptied.) So, now we mark each buffer that we try to
write so that we can distinguish the ones that are being remarked dirty
from those that we have not yet tried to flush. Once we have tried to
push every buffer once, we then push any associated metadata that is
causing the remaining buffers to be redirtied.

Submitted by:	Matthew Dillon <dillon@apollo.backplane.com>
1999-03-02 04:04:31 +00:00
Guy Helmer
f6c2429116 Add a missing word and change a "then" to "than".
PR:		docs/9304 docs/9822
1999-03-02 03:55:34 +00:00
Guy Helmer
568e4cbb74 Apply mdoc macros, remove some spacing that caused unexpected line breaking,
and fix some spelling errors.  (I also took the liberty of converting the
reference to LKMs to KLDs.)

PR:		docs/9238 docs/9305
1999-03-02 03:45:47 +00:00
Guy Helmer
6e062fe1b7 Correct synopsys: getsubopt is declared in unistd.h, not stdlib.h.
PR:		docs/9376
1999-03-02 02:35:57 +00:00
Guy Helmer
42b47d96f0 Mention that getservbyport requires its port parameter to be in
network byte order.

PR:		docs/9376
1999-03-02 02:34:23 +00:00
David Nugent
f35227220f Add the ability to print user records in unix version 7 (old) format. 1999-03-02 00:53:33 +00:00