Commit Graph

14312 Commits

Author SHA1 Message Date
grog
d82a503606 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
grog
ed415fe18c VINUM_STARTCONFIG:
Pass the 'data' parameter to start_config, which uses it as the
  parameter 'force.
1999-03-23 04:48:31 +00:00
grog
5f48e8b768 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
grog
688623aa54 Change the declaration of start_config. 1999-03-23 04:47:33 +00:00
grog
91ed55b390 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
grog
5386813d7a Add partition type for Vinum.
Offered-for-inspection-to: jkh
1999-03-23 04:08:42 +00:00
bde
9c2168a7db 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
n_hibma
10c53b0d51 Cosmetical changes. 1999-03-22 19:58:59 +00:00
n_hibma
f4b0f1726a Implementation of the keyboard driver.
Done by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-03-22 19:55:30 +00:00
n_hibma
7dfa9c591c 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
phk
fbf7e67973 Make the same size rounding error both ways. 1999-03-22 14:01:58 +00:00
alc
9b15de3986 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
jkh
d52fa1be5c Add cdev 120 as the audit device.
Requested by:	Robert Watson <robert+freebsd@cyrus.watson.org>
1999-03-21 21:53:09 +00:00
phk
e787195c02 Link the bb structures together as we find them. 1999-03-21 12:30:50 +00:00
alc
1c18b849ca 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
dcs
70ba7a32ce 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
dcs
c032780b94 Fix a couple of nasty errors in the README. 1999-03-20 12:25:43 +00:00
wes
0f81341182 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
0e2ac47664 Sync with sys/i386/isa/if_ed.c revision 1.150. 1999-03-19 16:01:34 +00:00
kato
6d2e2542e4 Sync with sys/boot/i386/loader/version revision 1.4. 1999-03-19 15:59:56 +00:00
kato
abcc07c5f4 Sync with sys/boot/i386/libi386/bootinfo.c revision 1.18. 1999-03-19 15:58:05 +00:00
dfr
dab08467c1 Don't lower the ipl for splsoftcam, splsoftvm and splsoftnet. 1999-03-19 10:56:28 +00:00
bde
9dfb67dcc5 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
grog
a7a3e25040 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
grog
7428724341 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
grog
fd54e66185 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
grog
b3c2dbf024 Use microtime, not getmicrotime, to note the times in the malloc and
free histories.
1999-03-19 07:14:18 +00:00
grog
0cda71eddc 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
grog
8299aec88d 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
grog
af791bb47c 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
alc
4bdf1d66da 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
grog
5a02343350 Modify to compile with egcs.
Prodded-by: obrien
1999-03-18 23:26:22 +00:00
jlemon
65c196874d Cast (u_char *) to (vm_offset_t) to silence compiler warnings. 1999-03-18 20:13:20 +00:00
jlemon
031e75b49e Remove debugging printf that I overlooked. 1999-03-18 18:43:03 +00:00
dcs
c18006911a Avoid copying m_args if none exists. (Perhaps this is a better solution,
Doug?)
1999-03-18 14:36:22 +00:00
kato
00ae7114ac 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
dfr
3bb3f6f67f Don't choke in MOD_ARGS() if mp->m_args is NULL. 1999-03-18 11:00:48 +00:00
jlemon
0bdd9409fd Update to use the modified vm86_datacall interface. 1999-03-18 04:38:16 +00:00
jlemon
e44e5b62e3 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
jlemon
3fb5a3e1bb 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
chuckr
cd0566dca7 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
dcs
5286c095cf Version bump: kvm & dictionary size. 1999-03-17 23:05:46 +00:00
dcs
9d9e06aee3 Disable trace! until it gets fixed. 1999-03-17 23:03:36 +00:00
wosch
0987d6b002 Change copyright in kernel output at booting time
from "FreeBSD Inc." to "The FreeBSD Project".
1999-03-17 19:55:52 +00:00
luigi
f29f19c757 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
83a6a2555d Sync with sys/i386/conf/options.i386 revision 1.110. 1999-03-17 09:00:33 +00:00
kato
a1b46e002c Sync with sys/i386/conf/majors.i386 revision up to 1.68. 1999-03-17 08:59:31 +00:00
kato
a156eabfbe Sync with sys/i386/conf/files.i386 revision 1.229. 1999-03-17 08:58:42 +00:00
kato
9a90df5bb2 Sync with sys/i386/conf/devices.i386 revision 1.16. 1999-03-17 08:57:32 +00:00
kato
82d216c534 Sync with sys/i386/conf/GENERIC revision 1.155. 1999-03-17 08:56:28 +00:00