15939 Commits

Author SHA1 Message Date
msmith
11c857f184 Update of the i686 MTRR/memory range support.
- Support for setting memory range attributes on SMP systems using the
   new SMP rendezvous function
 - Don't print the confusing default memory type message.
 - Allow legal overlapping range types.
 - Turn interrupts back on after setting MTRRs in UP mode (whoops)
 - Don't waste time calling invltlb() after wbinvd(); it's not
   SMP-compatible (interrupts are off) and unncessary because
   wbinvd already flushes the TLB.

This code is now essentially feature-complete.
1999-07-20 06:58:51 +00:00
msmith
84c939ef11 Implement an all-CPU shootdown-style rendezvous facility. This allows
the caller to specify a function to be guarded between an entry and exit
barrier, as well as pre- and post-barrier functions.

The primary use for this function is synchronised update of per-cpu private
data.  The implementation is almost (but not quite) MI; with a better
mechanism for masking per-CPU interrupts it could probably be hoisted.

Reviewed by:	peter (partially)
1999-07-20 06:52:35 +00:00
alc
905bcc1184 An SMP-specific change: Eliminate an unnecessary lock acquire and release
in setdelayed.

Submitted by:	luoqi and bde
1999-07-20 06:09:53 +00:00
alc
db0a7d40ad Convert a "page not busy" warning to an assertion.
Submitted by:	dillon@backplane.com
1999-07-20 05:46:56 +00:00
rnordier
c1740a7c66 Reintroduce LBA (cyl > 1023) support in the bootblocks, enabled by
means of a build option.
1999-07-20 01:19:23 +00:00
peter
c5c37d67da Fix a page size vs. KB mixup. The extra buffers allocated at a reduced
rate is meant to kick in at 64MB, not 256MB.

Reviewed by:	Matthew Dillon <dillon@backplane.com>
1999-07-19 23:36:30 +00:00
rnordier
c46ca64645 Activate kgzldr. 1999-07-19 20:16:34 +00:00
rnordier
83fed33cb1 Use M4FLAGS for m4. 1999-07-19 20:10:17 +00:00
rnordier
2d7803cd6b This commit was generated by cvs2svn to compensate for changes in r48907,
which included commits to RCS files with non-trunk default branches.
1999-07-19 18:07:44 +00:00
rnordier
f5a2fbe418 kgzldr is a kzipboot replacement for use with kgzip(8).
Development sponsored by Global Technology Associates, Inc.

Reviewed/tested by: abial
1999-07-19 18:07:44 +00:00
hosokawa
1712f41066 Sync with GENERIC (place of xe0 driver) 1999-07-19 15:18:21 +00:00
phk
f3c07181e3 [click] Now all dev_t's in the kernel have their char device major.
Only know casualy of this is swapinfo/pstat which should be fixes
the right way:  Store the actual pathname in the kernel like mount
does.  [Volounteers sought for this task]

The road map from here is roughly:  expand struct specinfo into struct
based dev_t.  Add dev_t registration facilities for device drivers and
start to use them.
1999-07-19 09:37:59 +00:00
phk
27ccb91085 Add sysctl tree debug.sizeof to tell us how big things are. First two
entries are struct proc and struct vnode.
1999-07-19 09:13:12 +00:00
bde
a9cec3b79d Updated acquire_timer2()'s state machine to work when the i8254 is
being used for timecounting.  Fixed a race or two in it.  Undisabled
it.

PR:		10455
1999-07-18 18:32:42 +00:00
bde
e871bb8dd7 Don't let the machdep.tsc_freq sysctl proceed if the TSC is present
but broken, since tsc_timecounter is not initialised in that case,
and updating an uninitialised timecounter is fatal.

Fixed style bugs in the machdep.i8254_freq and machdep.tsc_freq
sysctls.

Reviewed by:	phk
1999-07-18 15:19:29 +00:00
bde
9ea61245a8 Added a sysctl "kern.timecounter.hardware" for selecting the hardware
used for timecounting.  The possible values are the names of the
physically present harware timecounters ("i8254" and "TSC" on i386's).

Fixed some nearby bitrot in comments in <sys/time.h>.

Reviewed by:	phk
1999-07-18 15:07:20 +00:00
jmb
a686f581bc fix comment re: RST received in TIME_WAIT to match the code. 1999-07-18 14:42:48 +00:00
phk
251f187eba Use the vn_todev() function, rather than VOP_GETATTR 1999-07-18 14:31:01 +00:00
phk
63c9fe9157 Introduce the vn_todev(struct vnode*) function, which returns the dev_t
corresponding to a VBLK or VCHR node, or NODEV.
1999-07-18 14:30:37 +00:00
peter
c8095f053a Reset SA_NOCLDWAIT on exec().
PR:		kern/12669
Submitted by:	Doug Ambrisko <ambrisko@whistle.com>
1999-07-18 13:40:11 +00:00
yokota
64ae975982 - Clear relevant variables when the keyboard is not available.
- Do not touch the `tty' struct when it's not yet available.
- Initialize correct bits in `fonts_loaded'.
1999-07-18 06:16:53 +00:00
yokota
a356e094e4 - Move the `return' statement the correct place so that the keyboard
won't be initialized if `atkbd?' is disabled.
1999-07-18 06:16:25 +00:00
jdp
32985454bd Remove a duplicate comment. 1999-07-18 02:26:02 +00:00
jdp
e0f8fd1d35 Remove four no-op casts. 1999-07-18 01:35:26 +00:00
phk
f598bb42c1 Centralize dumpdev handling. 1999-07-17 20:47:52 +00:00
phk
6063f24ab8 Reverse the sense of a test, dev2udev() will be much cheaper than
udev2dev().
1999-07-17 20:29:10 +00:00
phk
09327a40f9 Add a field to struct swdevt to avoid a bogus udev2dev() call. 1999-07-17 19:59:55 +00:00
phk
bd8b17658f Fix 2nd arg to udev2dev() call in ccd.c 1999-07-17 19:58:37 +00:00
phk
c23426c874 Use 256 as magic in bmaj2cmaj[]. Treat BLK/CHR dev_t more correctly. 1999-07-17 19:57:25 +00:00
phk
fb0144f561 Fix 2nd arg to udev2dev(). 1999-07-17 19:38:00 +00:00
phk
6c373ff516 I have not one single time remembered the name of this function correctly
so obviously I gave it the wrong name.  s/umakedev/makeudev/g
1999-07-17 18:43:50 +00:00
alc
490319991d An SMP-specific change: eliminate another check on bsp_apic_ready.
(See rev 1.23.)
1999-07-17 18:34:32 +00:00
phk
ea02d0c68e slight change in the way we hi-jack the wd drivers cdevsw. 1999-07-17 17:55:53 +00:00
marcel
53c130ee84 Implementation of TCXONC.
Reviewed by: bde
1999-07-17 08:24:57 +00:00
dfr
c760a74e9e Handle R_ALPHA_NONE relocations in KLD. 1999-07-16 09:16:11 +00:00
simokawa
404cd927b9 * Restore register correctly.
* Add missing bits for profiling.
1999-07-16 06:45:52 +00:00
alc
ab1033c835 Remove vm_object::last_read. It is used by the old swap pager, but
not by the new one, i.e., vm/swap_pager.c rev 1.108.

Reviewed by:	dillon@backplane.com
1999-07-16 05:11:37 +00:00
msmith
7e710934a0 Add support for multiple PCI busses directly connected to the nexus.
This is only partially complete, but allows 450NX-based systems with
more than one PCI bus to be used again.

Submitted by:	dfr
1999-07-16 01:00:30 +00:00
n_hibma
fa5dc41401 The boot countdown timer says it will boot in 1 seconds,
which is grammatically incorrect.

PR:		12628
Submitted-By:	R. Matthew Emerson <rme@nightfly.apk.net>
1999-07-15 20:40:52 +00:00
wpaul
82c0303935 Make a few other cleanups while I'm in the area. Typo in comment, unused
structure members, etc. No functional changes.
1999-07-14 21:53:11 +00:00
wpaul
cad9268983 Revert some changes I had made to try and cut down on the number of TX EOF
interrupts that were scheduled. Testing shows it didn't really do very much
and it makes the code a little more complicated (which is never a good thing).

Also fix the rambuffer offset initialization for the 512K/64K SRAM case
(512K total using 64K chips). It should be 0. The only case with a
non-standard rambuffer offset address is 1024K/64K according to the
SysKonnect manual. (My card has the 1024/64 configuration and I don't know
which card uses the 512/64 configuration, if any, so I'm not sure that
this was really a problem for anyone.)
1999-07-14 18:57:32 +00:00
peter
e179e11229 Oops, missed out one chunk of the last patch. (*blush*)
Submitted by:	Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
Submitted by:	"Matthew N. Dodd" <winter@jurai.net>
1999-07-14 17:37:53 +00:00
yokota
78fb7c3b79 The following patch will remove a hack introduced in
/sys/ddb/db_input.c rev 1.19 to recognize syscons's cursor keycodes.
It is unnecessary now that scgetc() in syscons returns the escape
sequence for the cursor keys rather than their raw, internal key
codes.
1999-07-14 10:53:41 +00:00
mckusick
f091c51c34 Create the macro DOINGASYNC to check whether the MNT_ASYNC flag has
been set for a mount point. Insert missing checks to ensure that all
write operations are done asynchronously when the MNT_ASYNC option
has been requested.

Submitted by:	Craig A Soules <soules+@andrew.cmu.edu>
Reviewed by:	Kirk McKusick <mckusick@mckusick.com>
1999-07-13 18:20:13 +00:00
phk
514e7c3963 dont allow open if no device was found. 1999-07-13 08:15:22 +00:00
obrien
ad580e436e Move the xe0 driver back where it was. It was misleading where it was as it
does not take over the PCIC, it does require PCCARD support, and it doesn't
replace any existing driver.
1999-07-13 08:08:20 +00:00
alc
a7e05ba08c Commit the correct patch, i.e., the one that actually corresponds
to the rev 1.2 log entry.
1999-07-13 06:35:25 +00:00
alc
b27cbb2886 Changed the implementation of the primitives to guarantee atomicity
with respect to interrupts on UP systems.  (The upgrade from gcc 2.7.x
to egcs 1.1.2 produced at least one non-atomic code sequence in
swap_pager_getpages.)

In addition, the primitives are now SMP-safe, but only on SMPs.  (For
portability between SMPs and UPs, modules are compiled with the SMP-safe
versions.)

Submitted by:	dillon and myself
Reviewed by:	bde
1999-07-13 03:32:17 +00:00
green
78204b1ba9 Correct a mistake in so_cred changes. In practice, I don't think that it
would make a difference. However, my previous diff _did_ change the
behavior in some way (not necessarily break it), so I'm fixing it.

Found by:	bde
Submitted by:	bde
1999-07-12 18:58:23 +00:00
roger
557c77ca7b Bug fixes
Change number of VBI lines from 16 to 12 for NTSC formats.
 Juha.Nurmela@quicknet.inet.fi found/fixed bug in VBI_SLEEP.

New features
 MSP3430G DBX initialisation from Matt Brown <matt@dqc.org>
 STB Bt878 card identification.
 Hauppauge Model Number identification.
 Changes to probeCard() for better eeprom identification.
 Experimental TDA9850 initialisation code, from Linux bttv.

Cross Platform Changes
 The driver has been reorgainsed based ideas from Brad Parker's port to Linux
 to seperate OS Dependant and Independant sections.
 I have backends for FreeBSD 2.2.x/3.x and 4.x newbus, BSDI, OpenBSD and NetBSD.

This commit has FreeBSD 2.2.8/2.2-stable/3.x and FreeBSD 4.x newbus backends.

Some code submitted by: Juha.Nurmela@quicknet.inet.fi
                        Matt Brown <matt@dqc.org>
                        Brad Parker <brad@parker.boston.ma.us>

Some code obtained from:        Linux bttv driver
1999-07-12 15:51:50 +00:00