13480 Commits

Author SHA1 Message Date
dfr
9b7a6adfd1 Implement support for adding syscalls in KLD modules.
Submitted by: Assar Westerlund <assar@sics.se>
1999-01-09 14:15:41 +00:00
bde
7cf9f70ba5 Fixed pedantic syntax errors caused by a trailing semicolon in a macro
definition.
1999-01-09 14:07:37 +00:00
bde
69095f699e Removed the asm version of translate_bytes(). When both the C
version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.
On K6's, it is only 1.25 times slower.
1999-01-09 13:50:52 +00:00
bde
2616cfa856 Removed buggy, `#if 0'ed asm version of translate_bytes() instead of
fixing it.  See rev.1.22 of ../sound/audio.c for fixes.  When both
the C version and the asm version are inlined, and everything is cached,
the asm version is 1.75 times slower than the C version on P5's.  On
K6's, it is only 1.25 times slower.
1999-01-09 13:43:09 +00:00
bde
4c2d702e3a Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.  The asm
here (for translate_bytes()) is now an interesting example of one
that needs to be volatile to work.

Fixed missing "memory" in the clobber list for translate_bytes().

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:27:37 +00:00
bde
97a75ce742 Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.

Cleaned up the asm statement for do_cpuid() a little.

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:07:18 +00:00
bde
cea612c782 Don't put operands in clobber lists, since this is dubious for old
versions of gcc and broken for current versions of egcs.

Submitted by:	"John S. Dyson" <dyson@iquest.net> but rewritten by me
1999-01-09 13:00:27 +00:00
kjc
fe2dbd0b73 cleanup: remove part of the code for 2.1.
add two functions to get the MAC address of the card.

Obtained from: ALTQ
1999-01-09 12:56:17 +00:00
yokota
f10c5df435 Add the new keyboard driver and video card driver. They will be
used by console drivers.

(They are not yet activated yet.  Wait for announcement later.)
1999-01-09 02:44:50 +00:00
msmith
dc29b5609b kzip the loader, this shrinks it to about 60% of its original size.
Note that this is a stopgap with dependancies on the a.out tools.
1999-01-09 02:38:40 +00:00
msmith
6ed8cbf467 Extend bd_print() so that it displays slices and partitions on disks. 1999-01-09 02:36:19 +00:00
msmith
4077891a70 Add a description for 'lsdev' so that it shows up in the '?' display 1999-01-09 02:34:48 +00:00
abial
f4a65bb45d Fix faulty logic in handling userconfig_script, INTRO_USERCONFIG and
RB_CONFIG.

Now, the code should do the right thing in the following cases, when
kernel is compiled with INTRO_USERCONFIG:

* when booted without userconfig_script and without RB_CONFIG, present
  intro screen, and wait for user input.

* when booted with userconfig_script and without RB_CONFIG, DON'T present
  intro screen unless explicitly asked in userconfig_script, basing on
  assumption that if a user loads userconfig_script, (s)he already
  decided what parameters to configure. Proceed with booting.

* when booted without userconfig_script, and with RB_CONFIG, enter
  configuration utility and wait for user input.

* when booted with userconfig_script, and with RB_CONFIG, execute all
  commands from userconfig_script, and DON'T leave the config utility,
  but wait for user input.

And finally, regardless of the combination of the above parameters,
when intro screen is invoked either first or next times, and user
chooses to go back to CLI interface, unblock the quit command.
1999-01-08 21:00:26 +00:00
bde
b823adf4be Fixed some style bugs. Clarified a comment. 1999-01-08 19:51:02 +00:00
bde
e53595f704 Unspammed includes in <machine/cpufunc.h> in the !SMP case. Partially
unspammed them in the SMP case.
1999-01-08 19:17:49 +00:00
eivind
a8dc66f457 Split DIAGNOSTIC -> DIAGNOSTIC, INVARIANTS, and INVARIANT_SUPPORT as
discussed on -hackers.

Introduce 'KASSERT(assertion, ("panic message", args))' for simple
check + panic.

Reviewed by:	msmith
1999-01-08 17:31:30 +00:00
eivind
1c69824749 USUBCLASS_MODEM -> USUBCLASS_ABSTRACT_CONTROL_MODEL
Matches the header file change, and makes this compile.
1999-01-08 17:25:37 +00:00
bde
29d4498b94 Moved declarations related to copying and zeroing to the right place. 1999-01-08 16:29:59 +00:00
kato
ff153c1347 Sync with sys/i386/isa/sio.c and syscons.c revisions 1.221 and 1.289,
respectively.
1999-01-08 16:09:23 +00:00
kato
d7d67115d6 Sync with sys/i386/i386/userconfig.c revision up to 1.120. 1999-01-08 16:05:27 +00:00
kato
e6a6a95f8f Sync with sys/i386/i386/machdep.c revision 1.320. 1999-01-08 16:04:20 +00:00
eivind
422cb2b23a Instead of providing bad instructions here, point people at the
appropriate docs.

Prodded by:	Sheldon Hearn <axl@iafrica.com>'s message in -current
1999-01-08 16:04:18 +00:00
eivind
1e06085274 Add a warning about the copyright restraints. 1999-01-08 16:03:12 +00:00
kato
60ddb201ac Oops, remove duplicate line. 1999-01-08 16:03:11 +00:00
kato
494d956c7b Sync with sys/i386/conf/majors.i386 revision 1.60. 1999-01-08 16:02:03 +00:00
kato
f03733de5d Sync with sys/i386/conf/Makefile.i386 revision 1.133. 1999-01-08 15:59:41 +00:00
luoqi
362bef31c5 Allocate kernel page table object (kptobj) before any kmem_alloc calls.
On a system with a large amount of ram (e.g. 2G), allocation of per-page
data structures (512K physical pages) could easily bust the initial kernel
page table (36M), and growth of kernel page table requires kptobj.
1999-01-08 14:20:54 +00:00
yokota
3f69afe7b1 Update #ifdef directive.
# I forgot this bit when I committed VESA KLD update a few days ago ;-<
1999-01-08 12:57:06 +00:00
n_hibma
f85edabd28 Major synchronisation with NetBSD USB code 1999-01-07 23:07:57 +00:00
n_hibma
b118bd4907 Clean up, nothing major 1999-01-07 23:01:11 +00:00
n_hibma
531ff5b856 Name change suggested by Justin (QUEUE->UNTIL) 1999-01-07 22:27:53 +00:00
dt
6198a10485 Make pmap_ts_referenced check more than 1 pv_entry. (One should be carefull
when move elements to the tail of a list in a loop...)
1999-01-07 22:15:51 +00:00
julian
a7b385889e Changes to the LINUX_THREADS support to only allocate extra memory for
shared signal handling when there is shared signal handling being
used.

This removes the main objection to making the shared signal handling
a standard ability in rfork() and friends and 'unconditionalising'
this code. (i.e. the allocation of an extra 328 bytes per process).

Signal handling information remains in the U area until such a time as
it's reference count would be incremented to > 1. At that point a new
struct is malloc'd and maintained in KVM so that it can be shared between
the processes (threads) using it.

A function to check the reference count and move the struct back to the U
area when it drops back to 1 is also supplied. Signal information is
therefore now swapable for all processes that are not sharing that
information with other processes. THis should addres the concerns raised
by Garrett and others.

Submitted by:	"Richard Seaman, Jr." <dick@tar.com>
1999-01-07 21:23:50 +00:00
mjacob
4cb6632c89 Like the problems just fixed in scsi_da.c, make sure
to release the probe ccb before taking down the periph.
Also, don't do cdscheduling if you're not going to
attach the device after all.
Reviewed by:	ken@freebsd.org
1999-01-07 20:20:57 +00:00
mjacob
7511ca39c2 A better fix to avoid race conditions between failed probes
and peripheral removal.
Obtained from:gibbs@freebsd.org
1999-01-07 20:19:09 +00:00
bde
2facf6978a Don't pass unused unused timestamp args to UFS_UPDATE() or waste
time initializing them.  This almost finishes centralizing (in-core)
timestamp updates in ufs_itimes().
1999-01-07 16:14:19 +00:00
yokota
9625424b5f Remove a hard-coded table of kernel console I/O functions exported
from sc, vt and sio drivers.  Use instead a linker_set to collect them.

Staticize ??cngetc(), ??cnputc(), etc functions in sc and vt drivers.
We must still have siocngetc() and siocnputc() as globals because they
are directly referred to by i386-gdbstub.c :-(

Oked by: bde
1999-01-07 14:14:24 +00:00
abial
2994145c24 When compiled with INTRO_USERCONFIG, skip the intro screen anyway if we
already loaded and interpreted userconfig_script. Otherwise, when using
such kernel system would always block waiting for user input in UserConfig,
while the intention was to avoid this by having userconfig_script.

Reviewed by:	msmith
1999-01-07 09:49:28 +00:00
peter
ea7fa79687 Flip the kernel default to ELF.. Add a test to try and warn people
that they might be about to blow their feet off if they have not been
reading their mail.  I don't know if or how well this will work, but it's
worth a try.
1999-01-07 06:52:41 +00:00
peter
7109145cbd OBJFORMAT_DEFAULT = elf now. (this is where /usr/bin/objformat and
libc/gen/getobjformat.c get their default from)
1999-01-07 06:35:18 +00:00
ken
55bfcee828 The Quantum Atlas III evidently has an identical problem to the Atlas II.
It keeps returning queue full until we have reduced the number of tagged
openings to the minimum.

So, put in a quirk entry with the same work-around.  This quirk entry is
only for the 9G Atlas III, once someone comes up with inquiry information
for the 18G version of that drive, we can quirk it as well.

Submitted by:	"Johan Granlund" <johan@granlund.nu>
1999-01-07 01:11:24 +00:00
n_hibma
e535a63f75 queue.h has taken over this functionality 1999-01-06 23:16:45 +00:00
grog
61ad910569 Fix an overflow problem which prevented revive from working on plexes
of more than 4 GB.

Reported by: dg
1999-01-06 23:11:29 +00:00
julian
4666ac5027 Add (but don't activate) code for a special VM option to make
downward growing stacks more general.
Add (but don't activate) code to use the new stack facility
when running threads, (specifically the linux threads support).
This allows people to use both linux compiled linuxthreads, and also the
native FreeBSD linux-threads port.

The code is conditional on VM_STACK. Not using this will
produce the old heavily tested system.

Submitted by: Richard Seaman <dick@tar.com>
1999-01-06 23:05:42 +00:00
n_hibma
6b0a11c013 Copied STAILQ_HEAD_INITIALIZER and LIST_HEAD_INITIALIZER from NetBSD, and
added STAILQ_REMOVE_HEAD_QUEUE to emulate NetBSD's SIMPLEQ_REMOVE_HEAD (that
removes not only the first element but a queue of elements).
1999-01-06 20:03:11 +00:00
n_hibma
680badab40 Added proper names to the device messages at probe and attach.
Missing ones:
	Device Id ADS technologies
	Device Id's SiS hardware
1999-01-06 19:55:49 +00:00
bde
2a8b656860 UFS_UPDATE() takes a boolean `waitfor' arg, so don't pass it the value
MNT_WAIT when we mean boolean `true' or check for that value not being
passed.  There was no problem in practice because MNT_WAIT had the
magic value of 1.
1999-01-06 18:18:06 +00:00
wpaul
7bcec4ef4c Add some tweaks to mx_mii_readreg(), mx_phy_readreg(), mx_phy_writereg()
and mx_setcfg() so that we can read the internal MII registers on the
MX98713 chip correctly. With these changes, media autoselection now
works correctly on the original 98713. All Macronix chips should now
be properly supported (unless there's a surprise waiting in the 98725).

Thanks to Ulf Zimmermann for providing a 98713 board.
1999-01-06 17:30:06 +00:00
bde
e5ba679f2a Ifdefed the conditionally used variable `prtrealloc'. Declare it
as volatile so that there is no chance that the code that it controls
is optimised away.
1999-01-06 17:04:33 +00:00
bde
f77c71a1d3 Backed out rev.1.47. It just broke my optimisations for lazy syncing
of timestamps in rev.1.45.  The soft updates bug was elsewhere.

Forgotten by:	luoqi
1999-01-06 16:52:38 +00:00