Commit Graph

72373 Commits

Author SHA1 Message Date
thorpej
f595d8e741 Ooops, do the last only if MULTIPROCESSOR. 2000-11-20 21:18:07 +00:00
thorpej
13c94ca56c We've fixed enough bugs that we can actually acquire the scheduler
lock, jump into the idle loop, and run user code!  Yippee!
2000-11-20 20:40:17 +00:00
thorpej
b37faa6ca5 Protect microtime_slock appropriately. 2000-11-20 20:37:52 +00:00
jdolecek
bc146d0eb0 make const the struct emul * pointers passed/used in stackgap_init(),
stackgap_alloc()
2000-11-20 20:23:07 +00:00
thorpej
e12f731db5 On the Alpha, interprocessor interrupts come in at the same priority
as normal device interrupts.  Because of this, we won't get IPIs while
servicing such interrupts.  This can lead to the following deadlock
scenario as reported by Bill Sommerfeld:
- Process runs on cpu1, but has FP state on cpu0.
- Process executes FP-using insn, causing an FP trap, which causes
  the kernel lock to be acquired.
- At roughly the same time, cpu0 receives a device interrupt, and attempts
  to acquire the kernel lock, which blocks since cpu1 already has it.
- cpu1 sends cpu0 a SYNCH FPU IPI, and waits for cpu0 to release its
  FP state.
- Since cpu0 cannot notice the IPI until it has processed the device
  interrupt, which it cannot do because it cannot acquire the kernel
  lock, we have deadlock.

Solve the problem by adding a spinlock interlock release hook which
checks for pending IPIs and processes them.

Idea from Bill Sommerfeld.
2000-11-20 20:17:13 +00:00
jdolecek
0630488eda fix typo 2000-11-20 20:07:36 +00:00
thorpej
3075dec01a Allow machine dependent code to specify a hook to be run when a
spinlock's interlock is released.

Idea from Bill Sommerfeld.
2000-11-20 20:04:49 +00:00
jdolecek
3b15e411a3 add moxa0 at isa entry, marked as experimental
This was not added also to other config files primarily because the
driver is not properly tested yet; this entry is primarily meant as an example
for those brave souls who want to try moxa.
2000-11-20 19:53:43 +00:00
scw
b6f0a678dd Add support for the m68060-based machines: MVME-172 and MVME-177.
CPU support taken from a combination of NetBSD/amiga and NetBSD/x68k.

At this time, MVME-172 works but MVME-177 is untested. Since the '177
is otherwise identical to the MVME-167, this should *just work*.
2000-11-20 19:35:28 +00:00
jdolecek
1964a728da add moxa 2000-11-20 19:27:16 +00:00
thorpej
fdfb847e3e Make ci_ipis volatile. 2000-11-20 19:25:43 +00:00
jdolecek
c27af44fc0 Add an attachment for MOXA 168P isa multiport card. This code was
written by Christoph Badura.
This was reported to work by user of this code. It's not tested
by me, but it's probably more useful in tree anyway.
2000-11-20 19:24:39 +00:00
thorpej
7f059c8e69 Move IPI processing into a separate function. 2000-11-20 19:24:36 +00:00
christos
212627911f fix typo. 2000-11-20 17:48:05 +00:00
wiz
e0fe90f71c Remove unneeded code (confirmed by christos). 2000-11-20 17:45:10 +00:00
christos
fb16d6d0ec Add an example on how to use getopts, stolen from the getopt manual page :-) 2000-11-20 16:59:56 +00:00
thorpej
5a22e57dc3 Print the CPU ID while dumping trap info. 2000-11-20 15:33:39 +00:00
tsubai
11b48d8a4d Thermal Management Interrupt is available on 750, too. 2000-11-20 15:16:04 +00:00
is
b002f5435b With RARP, MAC asks, and IP answers. Fixes PR 11330 by Thilo Manske, who
also provided the fix (modulo formatting).
2000-11-20 14:59:30 +00:00
tsutsui
2cd77d5700 Fix swapped keycode for '[' and ']'. 2000-11-20 14:55:15 +00:00
tron
f8f9801395 Use empty string as default prefix so that e.g "/etc/spwd.db" is used
instead of "//etc/spwd.db".
2000-11-20 14:09:36 +00:00
fvdl
c9366a8efe Fix reversed test. 2000-11-20 14:08:12 +00:00
onoe
2819c7b688 Use DMA from mbuf instead of copy in transmit.
Still use memcpy in receiving because we must use buffer fill mode
	and many packets may share single receive buffer.

XXX: Workaround(?) for CXD3222: it fails to DMA for selfid packet according
to code placement. I'm not sure about the reason (cache? timing? bug?).

Fixed the bug: transmitter sometimes stop and OACTIVE bit of if_fw
never be cleared.
Fixed the bug: freeing free buffer.

Enable ieee1394_drain and ieee1394_watchdog for loss of fragment.
2000-11-20 12:12:18 +00:00
pk
bc229aa16a Set the md_upgrade_prep_needed flag.
Kill some typos.
2000-11-20 11:52:37 +00:00
chs
c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
mason
18a6237381 s/usefull/useful/ 2000-11-20 06:42:05 +00:00
veego
a174b8a595 simple_lock_held is only defined when you use LOCKDEBUG.
Put it for now in an ifdef LOCKDEBUG.
2000-11-20 06:36:02 +00:00
onoe
4e1e677996 regen.
CXD32222 -> CXD3222 (Sony OHCI Controller)
2000-11-20 06:23:13 +00:00
onoe
e51b1f604e CXD32222 -> CXD3222 (Sony OHCI Controller) 2000-11-20 06:22:13 +00:00
matt
c18fd403d1 Add __udiv_w_sdiv for VAX. gnupg requires it. And since it's a libgcc
function it makes sense to put it in libgcc.
2000-11-20 05:47:41 +00:00
wiz
fb6c42da67 Re-integrate most changes done to amd in its old location (mostly
FORMAT_AUDIT related, and nits). (Thanks for the reminder, Jason!)
2000-11-20 03:19:33 +00:00
thorpej
2f1e131332 Delete a block of code that was intended to get the second
CPU to handle interrupts, but prevents a whole slew of things
from working properly on the second CPU.  It is no longer
necessary now that several other bugs have been fixed.
2000-11-20 03:15:15 +00:00
thorpej
fe5b367ce6 In Idle(), only switch to the idle PCB if we're not already running
on it, and make sure to deactivate the old process's address space,
as this will not otherwise be done by cpu_switch() later once we're
on the idle PCB.

Also, update some comments related to when s0 (i.e. the old process)
is NULL in the context switching code.
2000-11-20 02:44:45 +00:00
soren
046ce58634 Enable com at cardbus. 2000-11-20 02:00:46 +00:00
wiz
20845d16f4 remove outdated comment 2000-11-20 01:58:43 +00:00
wiz
c9669422d2 Make config_local.h more cross-compile safe. Thanks simonb! 2000-11-20 01:56:13 +00:00
simonb
f104ee65be Add a sysctl_rdminstruct() function - same as sysctl_rdstruct() but
can return short data if *oldlenp is less than len.
2000-11-20 01:46:56 +00:00
wiz
d53f0cf553 Fix thinko on my part (we do have setitimer). 2000-11-20 01:23:14 +00:00
wiz
94943a1a30 am-utils import script, based on bind2netbsd and consorts. 2000-11-20 00:52:32 +00:00
wiz
511edc4629 New config file for am-utils-6.0.4 2000-11-20 00:48:20 +00:00
wiz
98e25ea2e6 Install adapted config file instead of old one. 2000-11-20 00:47:10 +00:00
wiz
3819ccc8d0 Adapt config file example to am-utils-6.0.4. 2000-11-20 00:46:09 +00:00
wiz
432b495ff5 libamu minor got bumped to 2 2000-11-20 00:31:37 +00:00
wiz
0f1a444c28 restore ID tag (forgot removing $$) 2000-11-20 00:27:23 +00:00
wiz
e5d9f656ce Replace old build structure with new reach-over one. 2000-11-20 00:24:41 +00:00
wiz
4f035159de Import of amd reach-over Makefiles for using the sources in dist/am-utils. 2000-11-20 00:16:18 +00:00
wiz
0d632f7ea0 Merge changes to previous version and some NetBSD tag differences. 2000-11-20 00:02:56 +00:00
wiz
8a09ffd10e Import of am-utils-6.0.4 source for reachover build.
Changes: quoted RCS Ids in all files, added NetBSD's own in most,
and removed some easily regenerated files in doc/.
(amd2netbsd script will follow soon.)
2000-11-19 23:42:08 +00:00
jdolecek
2faa9db8c1 cosmetic change in brand string handling (NULL vs. "")
drop Xeon from PIII Cascades entry, it should be handled by the brand id
support (pointed out by Scott Telford in private e-mail).
2000-11-19 23:38:22 +00:00
jdolecek
26fe6166ed check_pty(): simple_unlock() might have been called even if the lock was
not locked previously in some cases; unlock only if the lock is held
2000-11-19 22:34:56 +00:00