8661 Commits

Author SHA1 Message Date
kato
7408f58dd2 Synchronize with sys/i386/isa/sio.c revision 1.180. 1997-09-01 10:45:02 +00:00
kato
f41e8f37be Synchronize with sys/i386/isa/clock.c revision 1.102. 1997-09-01 10:44:06 +00:00
kato
37cdd6e9b9 Synchronize with sys/i386/i386/microtime.s revision 1.31. 1997-09-01 10:42:43 +00:00
kato
245e6b264e Synchronize with sys/i386/i386/machdep.c revision 1.260. 1997-09-01 10:42:03 +00:00
kato
c3887642fa Synchronize with sys/i386/conf/options.i386 revision 1.57. 1997-09-01 10:41:04 +00:00
kato
98d5359b77 Synchronize with sys/i386/boot/biosboot/asm.S, boot.c and boot.h
revisions 1.12, 1.69 and 1.21, respectively.
1997-09-01 10:38:32 +00:00
fsmp
e771ecca0f General cleanup of the sub-system locking macros.
Eliminated the RECURSIVE_MPINTRLOCK.
clock.c and microtime use clock_lock.
sio.c and cy.c use com_lock.

Suggestions by:	Bruce Evans <bde@zeta.org.au>
1997-09-01 07:45:37 +00:00
fsmp
c9f24c9fd2 Cleanup. 1997-09-01 07:31:54 +00:00
bde
a08aff2d02 Removed unused #includes. 1997-09-01 03:17:34 +00:00
bde
e11885cf92 Some staticized variables were still declared to be extern. 1997-09-01 02:55:50 +00:00
bde
98fcb3f476 Print a device number in hex instead of decimal. 1997-09-01 02:28:32 +00:00
bde
8ad7283595 Removed unused #includes. 1997-09-01 02:18:13 +00:00
bde
be13855b37 Removed unused #includes (<machine/cpu.h> now gives more pollution). 1997-09-01 02:12:39 +00:00
bde
4f873bc427 Removed unused #includes. 1997-09-01 02:08:42 +00:00
bde
3d8f1db131 Fixed absolute pathnames in #includes. 1997-09-01 01:57:27 +00:00
bde
b5c24bb113 Move closer to supporting VM86 under SMP.
LINT now compiles but doesn't link.  Other link-time breakage for LINT
is now visible (SMP is incompatible with SIMPLELOCK_DEBUG).
Submitted by:	jlemon
1997-09-01 01:54:52 +00:00
bde
af20ce1c06 Removed unused #includes. 1997-09-01 01:12:53 +00:00
bde
9b28547e8e Removed unused #includes. The !KERNEL case may be more broken than before. 1997-09-01 00:51:52 +00:00
bde
ff4b4c1d18 Added #include of <sys/queue.h> to make this self-sufficient.
Includers of this file apparently didn't know that <sys/queue.h>
was a prerequisite and include a semi-random collection headers
until one happened to include it.
1997-09-01 00:18:02 +00:00
bde
31192fc056 Fixed options SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME which were broken
by incomplete cutting and pasting from machdep.c to kern_shutdown.c.

PR:		3953
1997-08-31 23:08:38 +00:00
bde
b217a31a96 Put I*86_CPU options in opt_global.h and don't #include "opt_cpu.h"
centrally.
1997-08-31 22:43:46 +00:00
bde
bca1963c9b Removed unused #includes (bogus #includes were necessary because fusword()
was declared in the wrong place).
1997-08-31 22:22:21 +00:00
se
03cddbd34b Prepare for 64bit programming environment (e.g. Alpha):
Use "ncrcmd" or "u_int32_t" instead of "u_long", where appropriate.

Submitted by:	Gerard Roudier <groudier@club-internet.fr>
1997-08-31 19:42:31 +00:00
se
eae32024a1 Remove debug printf() that had been ommited by accident. 1997-08-31 19:36:56 +00:00
se
83daf48fe3 Fix problem with early revision 53c825a and 53c875 chips, which
could cause a solid system lockup in the driver attach:

These chips do not abort an access to the internal SRAM, when
the driver set the software reset bit in the istat register. But
the chip will never acknowledge the requested PCI bus transfer
in the situation, causing an infinite wait and a lockout of other
bus-masters.

The problem has been reported for rev 0x11 of the 53c825a and
rev 0x01 of the 53c875.
Revisions 0x13 of the 53c825a and 0x03 of the 53c875 are known
to support SRAM accesses, even in the software reset state.
1997-08-31 19:35:52 +00:00
phk
0b3a12b83e Change the 0xdeadb hack to a flag called VDOOMED.
Introduce VFREE which indicates that vnode is on freelist.
Rename vholdrele() to vdrop().
Create vfree() and vbusy() to add/delete vnode from freelist.
Add vfree()/vbusy() to keep (v_holdcnt != 0 || v_usecount != 0)
  vnodes off the freelist.
Generalize vhold()/v_holdcnt to mean "do not recycle".
Fix reassignbuf()s lack of use of vhold().
Use vhold() instead of checking v_cache_src list.
Remove vtouch(), the vnodes are always vget'ed soon enough
  after for it to have any measuable effect.
Add sysctl debug.freevnodes to keep track of things.
Move cache_purge() up in getnewvnodes to avoid race.
Decrement v_usecount after VOP_INACTIVE(), put a vhold() on
  it during VOP_INACTIVE()
Unmacroize vhold()/vdrop()
Print out VDOOMED and VFREE flags (XXX: should use %b)

Reviewed by:		dyson
1997-08-31 07:32:39 +00:00
phk
2fd4aa4ddf Remove pbzero(), things we load zero their own bss.
Make VESA_SUPPORT default
1997-08-31 06:11:26 +00:00
fsmp
53cd3a6e28 Debug version of simple_lock. This will store the CPU id of the
holding CPU along with the lock.  When a CPU fails to get the lock
it compares its own id to the holder id.  If they are the same it
panic()s, as simple locks are binary, and this would cause a deadlock.

Controlled by smptests.h: SL_DEBUG, ON by default.

Some minor cleanup.
1997-08-31 03:17:48 +00:00
fsmp
92287f9b58 Created a private simple_lock to control accesses to com data structs
and hardware.
There is now another simple_lock around clock data/hardware accesses in
clock.c and microtime.s.  It is my belief that this is the only area
sio/cy might stumble into during an unblocked INTerrupt.  Thus I separated
the sio/cy code from the generic disable_intr()/enable_intr() routines.

Controlled by smptests.h: USE_COMLOCK, ON by default.
1997-08-31 03:17:18 +00:00
fsmp
58f19e591b Added clock_lock protection to microtime. 1997-08-30 19:02:56 +00:00
peter
b724085a66 Define some machine characteristics using symbol naming on conventions
in place in the other BSD's.
1997-08-30 18:59:48 +00:00
peter
82c7a53f3f Collect a few missing symbols from the OpenBSD elf includes. (The OpenBSD
includes use the formal elf names like us, NetBSD have different symbols)

Obtained from: OpenBSD
1997-08-30 18:58:31 +00:00
peter
29e2c84e7a Allow non-page aligned file offset mmap's, providing that the system is
allowed to choose the address, or that the MAP_FIXED address has the same
remainder when modulo PAGE_SIZE as the file offset.  Apparently this is
posix1003.1b specified behavior.  SVR4 and the other *BSD's allow it too.
It costs us nothing to support and means we don't get EINVAL on some mmap
code that works perfectly elsewhere.

Obtained from: NetBSD
1997-08-30 18:50:06 +00:00
kato
0d58a5f146 Synchronize with sys/i386/isa/clock.c and sio.c revisions 1.101 and
i.178, respectively.
1997-08-30 15:47:49 +00:00
peter
d8a9aa8f8b remove global prototype for setsigvec(). It's static inside kern_sig.c
and causes redundant declaration warnings.
1997-08-30 11:24:05 +00:00
peter
fd47342b00 Update to include recently added names that are shared between the C and
asm parts of the kernel.  This is to re-enable ELF compile support.
1997-08-30 11:20:02 +00:00
fsmp
e2310cdbcf Another round of lock pushdown.
Add a simplelock to deal with disable_intr()/enable_intr() as used in UP kernel.
UP kernel expects that this is enough to guarantee exclusive access to
regions of code bracketed by these 2 functions.
Add a simplelock to bracket clock accesses in clock.c: clock_lock.

Help from:	Bruce Evans <bde@zeta.org.au>
1997-08-30 08:08:10 +00:00
fsmp
62dbf14e9a Moved the SIMPLE_LOCK stuff from machine/param.h to machine/lock.h.
include it here for now.

Reviewed by:	Bruce Evans <bde@zeta.org.au>
1997-08-30 07:59:47 +00:00
itojun
8ab1ccfa8c Scsi RESERVATION CONFLICT and BUSY support for Tekram scsi cards.
Checked with DC390.  Pls mail me if you have any trouble with this patch.
1997-08-30 05:49:20 +00:00
kato
cca63e4f09 Move MACHINE_ARCH definition from <machine/param.h> to <machine/cpu.h>.
Submitted by:	Bruce Evans <bde@zeta.org.au>
1997-08-30 02:52:04 +00:00
fsmp
13fe237edc Support for the new FAST_HI algorithm, enabled.
Preliminary support for the INTR_SIMPLELOCK algorithm, disabled.
Note that this code is NOT ready.
1997-08-29 18:45:23 +00:00
fsmp
cf2671c51e Support for the new FAST_HI algorithm.
Improved interrupt handling, fewer silo overflows.

With help from:	dave adkins <adkin003@gold.tc.umn.edu>
1997-08-29 18:16:18 +00:00
fsmp
34c1430d68 Introduce FAST_HI option, ON by default.
This options allows a CPU that is blocked spinning for the giant lock
to process FAST_INTR() ISRs, eg. siointr().
1997-08-29 17:58:30 +00:00
kato
9dc7e3f1c1 Synchronize with sys/i386/i386/userconfig.c revision 1.90. 1997-08-29 14:53:18 +00:00
kato
9e55a6cbb3 Use correct member of scsi_cint for scbus. Add a space between lun
and flags.

Reviewed by:	kato
Submitted by:	Chiharu Shibata <chi@rd.njk.co.jp>
1997-08-29 14:47:31 +00:00
kato
cb17d7ed2c Fix typo in the comment introduced by me. 1997-08-29 11:01:14 +00:00
kato
e896c0bacb Added a sysctl arg, hw.machine_arch. The hw.machine_arch is "ibm-pc"
on IBM-PC box and is "pc-98" on NEC PC-98 box.  Userland program can
distinguish architecture on which the program runs.
1997-08-29 09:03:40 +00:00
kato
4593c74e11 Synchronize with sys/i386/conf/files.i386 and sys/i386/i386/trap.c
revisions 1.173 and 1.109, respectively.
1997-08-29 08:15:57 +00:00
msmith
baf2d6ffb6 Make the devfs code actually compile. Oops.
Submitted by:	jkh
1997-08-29 00:30:11 +00:00
jkh
3a22d79f32 Patch for 3.0: #include <sys/fcntl.h> instead of <sys/ioctl.h> 1997-08-28 15:23:10 +00:00