14448 Commits

Author SHA1 Message Date
Greg Lehey
ec79ff6a85 vinum_start:
remove the splbio() around the call to launch read requests.

launch_requests:
  Move the splbio() protection outside the entire launch_loop.  The
  previous location was causing problems with IDE drives, where the
  call to the strategy routine often did not complete until after
  complete_rqe deallocated the request structure.

Solution-independently-found-by: Russell Neeper <r-neeper@tamu.edu>
Problem-reported-by: Vallo Kallaste <vallo@matti.ee>
		     John Saunders <john@nlc.net.au>
		     Bernd Walter <ticso@cicely.de> (maybe)
1999-03-23 04:49:08 +00:00
Greg Lehey
8d2eda6481 VINUM_STARTCONFIG:
Pass the 'data' parameter to start_config, which uses it as the
  parameter 'force.
1999-03-23 04:48:31 +00:00
Greg Lehey
dae797bc58 init_drive:
Check for partition types FS_VINUM and FS_UNUSED.  Accept both, but
  complain about FS_UNUSED.  At a later date, only FS_VINUM will be
  accepted.

Threatened-since: over a year
1999-03-23 04:48:05 +00:00
Greg Lehey
b555657ffa Change the declaration of start_config. 1999-03-23 04:47:33 +00:00
Greg Lehey
7c0052fe03 start_config:
Add a flag `force' (VF_FORCECONFIG) to force name changes of
  existing drives.
config_drive:
  If the drive already has a vinum label, and name doesn't match the
  specified drive, do it anyway if the 'force' flag is specified.
finish_config:
  Reset the `force' flag.

Continually-tripped-over-by:  Karl Pielorz <kpielorz@tdx.co.uk>

give_sd_to_drive:
  If the drive is down, take the subdisk down and don't try to fix
  things.

update_plex_config:
  Don't try to update the config parameters of a plex which isn't
  fully configured (state plex_init or plex_unallocated).

  Correctly calculate the amount to trim off a striped or RAID-5 plex
  whose size is not a multiple of the stripe size.
1999-03-23 04:47:09 +00:00
Greg Lehey
84ac4f6bad Add partition type for Vinum.
Offered-for-inspection-to: jkh
1999-03-23 04:08:42 +00:00
Bruce Evans
2336a7ea75 Removed all traces of LN_FLAGS. It was only used to produce a link
/usr/sbin/sysctl -> ${DESTDIR}/sbin/sysctl in some versions of 2.2,
and this link was broken if DESTDIR was set.

Added a SYMLINKS macro.  This works the same as LINKS, except it
creates symlinks and the linked-to pathname may be relative.  This
is more flexible than LN_FLAGS, since it supports installing
symlinks independently of hard links.

Use `ln -f[s] ...' instead of `rm -f ...; ln [-s] ...' for LINKS and
SYMLINKS.  This is equivalent if the target is neither a directory nor
a symlink to a directory.

PR:		8279
1999-03-23 03:06:25 +00:00
Nick Hibma
83fac6ab3f Cosmetical changes. 1999-03-22 19:58:59 +00:00
Nick Hibma
86df1e04cc Implementation of the keyboard driver.
Done by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-03-22 19:55:30 +00:00
Nick Hibma
5e294a20cf Moved timeout initialisation a bit earlier in the process. The
untimeout function triggered panics once in a while.
1999-03-22 19:52:28 +00:00
Poul-Henning Kamp
3a25914cfd Make the same size rounding error both ways. 1999-03-22 14:01:58 +00:00
Alan Cox
99c81ca94d Two changes:
Remove more (redundant) map timestamp increments from properly
synchronized routines.  (Changed: vm_map_entry_link, vm_map_entry_unlink,
and vm_map_pageable.)

Micro-optimize vm_map_entry_link and vm_map_entry_unlink, eliminating
unnecessary dereferences.  At the same time, converted them from macros
to inline functions.
1999-03-21 23:37:00 +00:00
Jordan K. Hubbard
8abc4f6dad Add cdev 120 as the audit device.
Requested by:	Robert Watson <robert+freebsd@cyrus.watson.org>
1999-03-21 21:53:09 +00:00
Poul-Henning Kamp
48c619d0ee Link the bb structures together as we find them. 1999-03-21 12:30:50 +00:00
Alan Cox
2618393ec3 Eliminate a pointless TLB flush from the SMP idle loop.
Submitted by:	Luoqi Chen <luoqi@watermarkgroup.com>
Reviewed by:	"John S. Dyson" <toor@dyson.iquest.net>
1999-03-20 18:44:13 +00:00
Daniel C. Sobral
22004b5952 Revert bootinfo to 1.4 and use a different solution to NULL m_args
instead (don't copy).
1999-03-20 14:13:09 +00:00
Daniel C. Sobral
f6eaf40e07 Fix a couple of nasty errors in the README. 1999-03-20 12:25:43 +00:00
Wes Peters
df373873b5 Turn on PCI bus mastering in driver attach routine
to avoid hanging the system if the BIOS has not
initialized the interface.

PR:		10150
Reviewed by:	dg
1999-03-20 04:51:25 +00:00
KATO Takenori
68ac28d7f9 Sync with sys/i386/isa/if_ed.c revision 1.150. 1999-03-19 16:01:34 +00:00
KATO Takenori
a3eb4bf80c Sync with sys/boot/i386/loader/version revision 1.4. 1999-03-19 15:59:56 +00:00
KATO Takenori
6fafdac65b Sync with sys/boot/i386/libi386/bootinfo.c revision 1.18. 1999-03-19 15:58:05 +00:00
Doug Rabson
1a94f2a6e8 Don't lower the ipl for splsoftcam, splsoftvm and splsoftnet. 1999-03-19 10:56:28 +00:00
Bruce Evans
96ebc5810b Fixed a serious bug in rev.1.202. getnewbuf() sometimes didn't
initialise bp->b_data.  This tended to cause panics for file
systems whose block size is smaller than one page.
1999-03-19 10:17:44 +00:00
Greg Lehey
3c7e349bca Define two superdevices for vinum(8), depending on whether they are
compiled with or without debugging support.  This enables us to catch
(fatal) mismatches between the kernel and userland.

Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG.  They did
essentially the same thing.

Add VINUM_BIGDRIVE for pretending we have macho hardware.
1999-03-19 07:19:52 +00:00
Greg Lehey
def602f62b VolState: return an enum volumestate, not a (non-existent) enum volstate.
Strangely, neither gcc nor EGCS noticed this bug.

Eagle-eyed by: arno@heho.snv.jussieu.fr (Arno J. Klaassen)
1999-03-19 07:17:05 +00:00
Greg Lehey
1f3cd6add9 Perform all of vinumstrategy at splbio. This doesn't appear
necessary, but might explain some weird problems that some people have
been getting.
1999-03-19 07:15:24 +00:00
Greg Lehey
82ca4fa74c Use microtime, not getmicrotime, to note the times in the malloc and
free histories.
1999-03-19 07:14:18 +00:00
Greg Lehey
6e6d6dd86e Add debug flags DEBUG_BIGDRIVE, designed for testing only. It
pretends that each drive is 100 times as large as it really is.  Not
for use at home.

Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG.  They did
essentially the same thing.
1999-03-19 07:13:31 +00:00
Greg Lehey
9e89208b39 Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG. They did
essentially the same thing.

Reset flags at the right point at the end of configuration.  The
previous code disabled configuration saving at the end.
1999-03-19 07:10:19 +00:00
Greg Lehey
66c4363288 free_vinum: don't change loop bounds for deleting drives while in the loop.
This solved a problem where 'vinum resetconfig' only reset half
	    the drives.

Reported-by:  Brad Knowles <blk@skynet.be>
	      Karl Pielorz <kpielorz@tdx.co.uk>

Change the super device.  We now have three super devices:

  1.  The normal superdevice used by vinum(8).
  2.  The superdevice used by vinum(8) when compiled with debug support.
  3.  The superdevice used by the daemon.

This method allows vinum(8) to determine debug mismatches.  Also check
correctly for the device type.  The old code did not check all bits of
the minor number.

  Reported-by: a cast of thousands, most recently by Brad Knowles
               <blk@skynet.be>.
1999-03-19 07:08:40 +00:00
Alan Cox
61fc5ee627 Construct the free queue(s) in descending order (by physical
address) so that the first 16MB of physical memory is allocated
last rather than first.  On large-memory machines, this avoids
the exhaustion of low physical memory before isa_dmainit has run.
1999-03-19 05:21:03 +00:00
Greg Lehey
6f70e1c542 Modify to compile with egcs.
Prodded-by: obrien
1999-03-18 23:26:22 +00:00
Jonathan Lemon
9947b0e93f Cast (u_char *) to (vm_offset_t) to silence compiler warnings. 1999-03-18 20:13:20 +00:00
Jonathan Lemon
1baefb0612 Remove debugging printf that I overlooked. 1999-03-18 18:43:03 +00:00
Daniel C. Sobral
76bd51f729 Avoid copying m_args if none exists. (Perhaps this is a better solution,
Doug?)
1999-03-18 14:36:22 +00:00
KATO Takenori
c0318acd20 Install the manual page in sys/boot/i386/loader.
Sumbmitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-03-18 13:42:21 +00:00
Doug Rabson
28add8fe61 Don't choke in MOD_ARGS() if mp->m_args is NULL. 1999-03-18 11:00:48 +00:00
Jonathan Lemon
77e3f271a1 Update to use the modified vm86_datacall interface. 1999-03-18 04:38:16 +00:00
Jonathan Lemon
1fe3054698 Change the vm86_datacall interface so that callers are now responsible
for passing in their own data space and associated page table information.

Update the support files so that any pages in the vm86 page table are
mapped, rather than just one page.

Restore the E820 memory probe, and have it use the new interface.
1999-03-18 04:37:35 +00:00
Jonathan Lemon
6d2b6a085e Change btrl/btsl to cmpl/movl, since each cpu now has their own copy
of private_tss, and there's no need to use a bit array.  Also fixes
the problem of using `je' after btrl, since cmpl sets ZF.

Noticed by: Luoqi, on -current
1999-03-18 04:22:23 +00:00
Chuck Robey
84b4a89764 This is a temporary README file, to help those trying to experiment
with the new boot loader configuration process.  I got a lot of
help from Daniel Sobral, and both Dan and I got help from Mike
Smith.  This really belongs in Warner's UPDATING, but he's not
been answering his email recently, so that will wait a little.

Robert Nordier also gave me a lot of help, but he hasn't seen the
last version, and can't be blamed for my errors.

Approved by:	jkh

Reviewed by:	Mike Smith
1999-03-17 23:44:19 +00:00
Daniel C. Sobral
276dcca185 Version bump: kvm & dictionary size. 1999-03-17 23:05:46 +00:00
Daniel C. Sobral
a1134d7659 Disable trace! until it gets fixed. 1999-03-17 23:03:36 +00:00
Wolfram Schneider
92026f8b3e Change copyright in kernel output at booting time
from "FreeBSD Inc." to "The FreeBSD Project".
1999-03-17 19:55:52 +00:00
Luigi Rizzo
ab090e5b4e MF22... add bridging support to the device drivers. Without this
bridging cannot work on -current/releng3!
1999-03-17 16:44:53 +00:00
KATO Takenori
05fa4a899f Sync with sys/i386/conf/options.i386 revision 1.110. 1999-03-17 09:00:33 +00:00
KATO Takenori
6a0f06b109 Sync with sys/i386/conf/majors.i386 revision up to 1.68. 1999-03-17 08:59:31 +00:00
KATO Takenori
2e11ea2373 Sync with sys/i386/conf/files.i386 revision 1.229. 1999-03-17 08:58:42 +00:00
KATO Takenori
9ec6fcdc04 Sync with sys/i386/conf/devices.i386 revision 1.16. 1999-03-17 08:57:32 +00:00
KATO Takenori
4df62f4dc9 Sync with sys/i386/conf/GENERIC revision 1.155. 1999-03-17 08:56:28 +00:00