Commit graph

34792 commits

Author SHA1 Message Date
Greg Lehey 7d077233f8 Include Peter Wemm's renaming and restructuring
Change from lkm to kld

Remove #ifdefs for FreeBSD 2.c

vinumstrategy:
  Support anonymous (`raw') subdisks and plexes.
  Change code to allow daemon to perform operations formerly kludged
  into an interrupt context.  Remove the DIRTYCONFIG kludge.

No longer set B_ORDERED for reviving subdisks.  I suspect this
wouldn't work correctly, and it should be done in a different manner
in vinumrevive.c

sdio: set subdisk state correctly on error
      start to remove code that doesn't make any sense any more.
1999-01-21 00:39:36 +00:00
Greg Lehey 09c265ba75 Add keywords help, makedev, quit and setdaemon 1999-01-21 00:39:01 +00:00
Greg Lehey cb4547a333 MMalloc: remove directory part of name correctly 1999-01-21 00:37:56 +00:00
Greg Lehey ba40e00009 Create functions lockdrive and unlockdrive to handle drive locking 1999-01-21 00:37:38 +00:00
Greg Lehey 216e9f2046 Add keywords makedev, setdaemon and help. 1999-01-21 00:37:18 +00:00
Greg Lehey 2f4e1ffa11 Remove ioctls VINUM_GETUNMAPPED and VINUM_GETDEFECTIVE (we no longer
have regions).

Add definitions for VINUM_DAEMON, VINUM_FINDDAEMON and VINUM_DAEMON
1999-01-21 00:36:21 +00:00
Greg Lehey c3dff4f036 Include Peter Wemm's renaming and restructuring
Remove #ifdefs for FreeBSD 2.c

Change from lkm to kld

correct type of `flags' in calls to set_drive_state.

set_drive_parms: handle anonymous drives correctly (remove them)

drive VOP functions: use the PID of the original opener to fool the
lock manager.

open_drive: be quiet about failures (they're normal when scanning the
partitions).

close_drive: lock drive before closing.

remove_drive: lock drive before deallocating.

read_drive_label: set drive up when all is OK

check_drive:
  Complete rewrite.  Offload most of the code to the new
  vinum_scandisk

format_config:
  use snprintf and %qd options to make much less emetic.
  Remove old supporting functions.

vinum_scandisk:
  Moved here from vinum.c
  Almost complete rewrite, incorporating much of what was check_drive.
  We still don't have a general way to find the drives on a system, so
  get the user to supply the names via the `read' command.  For each
  device, try each possible compatibility slice name (there's a danger
  of finding both /dev/da1h and /dev/da0s1h otherwise).  Sort the
  partitions found in reverse order of last update time and read them
  in, setting the `update' parameter to parse_config and descendents.

save_config: rename to daemon_save_config, since the function is now
called by the daemon.  Create a new function save_config which queues
the request with the daemon.

daemon_save_config:  some mods to allow for the unfamiliar
environment.
1999-01-21 00:35:35 +00:00
Greg Lehey a01fbbe4ac Include Peter Wemm's renaming and restructuring
Change from lkm to kld

Recover from I/O errors by passing the request to the daemon, except
for plex I/O, which is not fault tolerant.
1999-01-21 00:34:14 +00:00
Greg Lehey 3a85d3f98a Remove old cruft 1999-01-21 00:33:47 +00:00
Greg Lehey 76714993c6 Include Peter Wemm's renaming and restructuring
Change from lkm to kld

Remove BROKEN_GDB kludge (it's not needed with klds)

Add code for interfacing with daemon

Modify device minor number encoding, use selector functions which also
permit anonymous plexes and subdisks.

Remove code for 2.x support.

Change messages to omit obvious words like 'plex' and 'subdisk.

give_plex_to_volume: invalidate subdisks being given to a plex which
is part of a volume with other plexes.

give_sd_to_plex: keep track of plex size in all cases

lock drives before closing them, to keep the daemon from getting
confused.

config_drive: handle partition type errors more gracefully

config_subdisk: set subdisk state correctly

find_drive, find_drive_by_dev, find_subdisk, find_plex, find_volume:
  set VF_NEWBORN flag when a new object is created

config_drive:
  Handle partition_status returns more cleverly.
  Replace the device name in some cases where it got overwritten.

config_subdisk:
  add parameter `update'.  If the object already exists, exit without
  any changes.
  Set state correctly.

config_plex, config_volume:
  add parameter `update'.  If the object already exists, exit without
  any changes.

parse_config:
  move read function to vinum_scandisk.
  add parameter `update' to pass to config_<object>.

remove_<object>_entry:
  print a message when the object is removed.

update_plex_config:
  Start defusing this function, which will go away some time.
  Remove calls to update_volume_config.
  Make size 64 bits
1999-01-21 00:32:54 +00:00
Greg Lehey 2ef3e3ddbc Include Peter Wemm's renaming and restructuring
Change from lkm to kld
1999-01-21 00:31:59 +00:00
Greg Lehey eb1cd79843 Code for vinum daemon. 1999-01-21 00:31:31 +00:00
Greg Lehey fc4e325173 Include Peter Wemm's renaming and restructuring
Change from lkm to kld

Remove BROKEN_GDB kludge (it's not needed with klds)

Add code for interfacing with daemon

Modify manner of determining when module is idle

Modify device minor number encoding, use selector functions which also
permit anonymous plexes and subdisks.

Remove code for 2.x support.

Move vinum_scandisk to vinumio.c

Remove myproc kludge

Keep track of open volumes by flag, not by pid (the pids caused some
problems with the lock manager).

free_vinum:
  Remove unmapped and defective regions from plexes.
  Wait for daemon to stop before returning

vinumopen:
  Don't refuse an open if the volume is already open.
1999-01-21 00:30:52 +00:00
Greg Lehey efd86c9a8c Reflect changes in vinumstate.h 1999-01-21 00:30:24 +00:00
Greg Lehey 7230cf7d2a Include Peter Wemm's renaming and restructuring
Change from lkm to kld

Add structures for daemon

Remove old cruft

Increase RQINFO_SIZE to 128
1999-01-21 00:29:44 +00:00
Greg Lehey e743f211c1 Include the copyright notice in the script, making the file COPYRIGHT
unnecessary.
1999-01-21 00:29:20 +00:00
Julian Elischer ea5f0893fd Minor rearranging of code to allow simple protocol domains to be
added as KLDs.
1999-01-21 00:26:41 +00:00
Greg Lehey 447a8172e9 Add source file vinumdaemon.c 1999-01-21 00:25:47 +00:00
Jordan K. Hubbard 70af253a69 Set JADETEX=no on ports build line.
Prompted by:	nik
1999-01-20 23:24:06 +00:00
Matt Jacob 667d00a796 put it back the way it was 1999-01-20 23:00:31 +00:00
John Polstra 4479239b60 Rename some globals to reduce namespace pollution. 1999-01-20 22:50:37 +00:00
John Polstra e40131079f Allow login to be linked statically even when PAM is used, since
there is now a static version of libpam.
1999-01-20 21:58:46 +00:00
John Polstra 9294327d4a Make it possible to use PAM in statically-linked applications. 1999-01-20 21:55:30 +00:00
John Polstra b0aaedc6f1 Change the definition of LIBPAM to support the static PAM library.
When linking statically, LIBPAM is augmented with the extra libraries
that the PAM modules require.  The idea is to centralize this
information rather than scattering it about in the Makefiles of
all the applications that use (OK, will use) PAM.

There is a new variable MINUSLPAM that should be used instead of
"-lpam".  In the static case, it gets -l flags for the extra required
libraries.

This approach was suggested by <bde>, but he didn't actually review
my changes.
1999-01-20 21:48:56 +00:00
John Polstra f67eb0dce4 Add some capabilities to <bsd.lib.mk> so that it can be used for
building dlopen-able modules, and add features needed to build a
static PAM library.  I think I cleaned it up some, too, but beauty
is in the eye of the beholder.

You can now build a shared library without version numbers, by
defining SHLIB_NAME to something like "pam_unix.so".  If SHLIB_MAJOR
and/or SHLIB_MINOR are set, SHLIB_NAME gets the usual default value,
but it can be overridden if desired.  If none of these symbols are
set, no shared library is built.

SHLIB_LINK controls the name of the symbolic link that points to
the library.  If it is unset, no link is made.  In the usual case,
it gets the right default: e.g., "libc.so" for ELF, nothing for
a.out.  This can be overridden.

STATICOBJS can be set to a list of extra object files that should
be added to the static library but not to the shared library.
These objects are added to the profiled library too.

These changes should make it easy to use <bsd.lib.mk> for building
things such as PAM modules and dynamic linkers, for which <bsd.prog.mk>
has been abused until now.
1999-01-20 21:42:40 +00:00
John Polstra c403312f22 The strtok_r() function is in libc now, so use it. 1999-01-20 21:24:28 +00:00
John Polstra 5d00b6ccba Add a prototype for strtok_r(). 1999-01-20 21:21:26 +00:00
Andrew Gallatin b8b442b5ab Fix some mildly annoying compiler warnings about unused variables
and incorrect types in printf() format strings.
1999-01-20 20:51:39 +00:00
Nik Clayton d0bf24fc77 iso639 is the ISO two letter codes for the representation of the names of
languages (en = English, de = German, zn = Chinese, and so on). This
complements the existing iso3166 file, which maps codes to countries.

Country code != language code.

I ran this past -core. No one voiced any objections, jkh said "fine".
1999-01-20 19:46:42 +00:00
Peter Wemm f75ccec2a1 *blush*. As a quick fix, move configure()'s SYSINIT back a little to allow
CAM's xpt_init() to get in first.  I hope this will fix the build again,
sorry guys. :-(
XXX configure_start() and configure_end() seem to be a bit excessive.. both
here and in the i386 code.
1999-01-20 19:22:24 +00:00
Matt Jacob 7781f5a621 temporary fix so alpha stays working while configure code is fixed 1999-01-20 19:08:45 +00:00
Mike Spengler 11624527a4 Clarify the number of network interfaces per physical interface available with
each type of signalling manager and bring the atm command into agreement with
the man page.
1999-01-20 18:36:58 +00:00
Bill Fenner 5c7b1fd97f Fix raw timestamps (zero-pad usecs)
Print 4-digit years in TIMESTAMP_PARSEABLE mode after '99.

PR:		bin/9507
1999-01-20 18:33:13 +00:00
Matt Jacob 89297ac4d1 I guess this is now a legacy driver (for alpha only right now).
At any rate, some changes had to be made so that alpha would compile.
1999-01-20 18:27:31 +00:00
Brian Somers b51a60cc47 Recurse when we've switched state via LoginDone(). If we've
got an open link, we want it to be select()d on - otherwise
we get a freeze when ``openmode'' is passive.
1999-01-20 18:06:52 +00:00
Warner Losh 6d54a68468 Add support for accessing ports. This was done to access parallel
ports, but should work for others as well.

Submitted by:  Parag Patel <parag@cgt.com>
1999-01-20 17:55:22 +00:00
Bill Fenner 7b1777101c Also consider the space left in the socket buffer when deciding whether
to set PRUS_MORETOCOME.
1999-01-20 17:45:22 +00:00
Bill Fenner b0acefa8d4 Add a flag, passed to pru_send routines, PRUS_MORETOCOME. This
flag means that there is more data to be put into the socket buffer.
Use it in TCP to reduce the interaction between mbuf sizes and the
Nagle algorithm.

Based on:	"Justin C. Walker" <justin@apple.com>'s description of Apple's
		fix for this problem.
1999-01-20 17:32:01 +00:00
Andrey A. Chernov 50d5db08d0 remove - before __entry, it is not make conmmand but shell continuation line 1999-01-20 17:22:11 +00:00
Eivind Eklund 15a1057c46 Add 'options DEBUG_LOCKS', which stores extra information in struct
lock, and add some macros and function parameters to make sure that
the information get to the point where it can be put in the lock
structure.

While I'm here, add DEBUG_VFS_LOCKS to LINT.
1999-01-20 14:49:12 +00:00
Jordan K. Hubbard 49e314e105 Put back this wholly innocent victim of Mike's drive-by shooting on alog;
it belongs to the labpc driver.  Mike will be in the corner wearing
the pointed hat, should anyone be looking for him.
1999-01-20 13:09:28 +00:00
Jordan K. Hubbard c80ac74f4b Replace old SAVE_USERCONFIG code with a customized version of Andrzej's
kget code.  Also collapse a redundant case in cdrom code.
1999-01-20 12:31:43 +00:00
Jordan K. Hubbard d441915b4b nuke dset from here.
Reminded by:	peter
1999-01-20 12:30:13 +00:00
Jordan K. Hubbard bd1ac8296b Remove obsolete dset code. It's an ELF/3-stage boot world now and there
are cleaner ways of doing this that don't involve stomping on kernel
binaries directly.
1999-01-20 11:56:42 +00:00
Jordan K. Hubbard aa6dcc6021 nuke dset - it doesn't work in a post-ELF world and abial has something
better as a replacement (kget).
1999-01-20 11:53:20 +00:00
Jordan K. Hubbard 2dc7119c2f Remove man page links too, making the world work again.
Forgotten by:	msmith
1999-01-20 11:36:26 +00:00
KATO Takenori 38d2964075 Remove 'alog'. 1999-01-20 08:31:56 +00:00
KATO Takenori 3c4a8b442b Sync with sys/i386/conf/Makefile.i386 revision 1.136. 1999-01-20 08:29:48 +00:00
Bill Fenner ec114097dd Merge conflicts from 3.9-beta3+IOS12. The conflicts were huge; cvs's
merge algorithm failed on several files, and the translation of the
mrouted man page to mdoc didn't help...
1999-01-20 07:55:57 +00:00
Bill Fenner b8d4f311c5 This commit was generated by cvs2svn to compensate for changes in r42888,
which included commits to RCS files with non-trunk default branches.
1999-01-20 07:44:18 +00:00