Commit Graph

24746 Commits

Author SHA1 Message Date
mycroft
760ab2591f Oops; add PROC_PC(). 2000-12-13 00:46:31 +00:00
mycroft
dc26c1ab17 Start cleanup of syscall(), similar to i386 and arm32. getpid() rate on my
AS200 goes from ~279000/s to ~446000/s.
2000-12-13 00:38:20 +00:00
simonb
79b09f2c56 Bump the initial data size limit to 32MB - large enough to compile a
kernel with an ELF toolchain.
2000-12-12 23:46:22 +00:00
sato
595779fbdc delete unused HPCFB_BSTORE codes. 2000-12-12 22:41:02 +00:00
he
4ce4648c24 Add the an(4) driver to these configurations as well. 2000-12-12 21:14:51 +00:00
mycroft
a34a3ecb5e Slight tweak. 2000-12-12 20:49:16 +00:00
mycroft
a7889f8229 Whoops. Previous change was not correct. 2000-12-12 20:30:12 +00:00
mycroft
2c7eaf2b50 Minor code rearrangement. 2000-12-12 20:22:49 +00:00
mycroft
a8ac146577 Adjust for userret() interface change. 2000-12-12 19:45:47 +00:00
mycroft
ea3353ea19 Clean up some DEBUG stuff, move want_resched check from userret() to ast(). 2000-12-12 19:41:50 +00:00
mycroft
4944313b38 GC a little more cruft, and use __HAVE_MINIMAL_EMUL. 2000-12-12 18:26:43 +00:00
mycroft
d90febaada More cleanup. 2000-12-12 18:13:29 +00:00
thorpej
c5293456da Adapt to bpfattach() changes, and further centralize the bpfattach()
and bpfdetach() calls into link-type subroutines where possible.
2000-12-12 18:00:22 +00:00
mycroft
9e9c8e676b Adjust some profiling stuff for the kernel. 2000-12-12 17:38:45 +00:00
mycroft
5e6430ffd8 Clean this up and add profiling stuff. 2000-12-12 07:35:25 +00:00
mycroft
9fc58d6908 Whoops, lay off the crack. 2000-12-12 06:36:19 +00:00
mycroft
446f34fb60 suswintr() and fuswintr() return -1 on error, not 0. 2000-12-12 06:32:39 +00:00
mycroft
7057d01bbc Inline need_resched() and need_proftick(). Make need_proftick() actually *do*
something!
2000-12-12 06:06:05 +00:00
mycroft
6a719db6e7 Still more cleanup. 2000-12-12 05:35:48 +00:00
mycroft
c656add165 More cleanup. 2000-12-12 05:26:38 +00:00
mycroft
e58eb48f25 Begin cleaning up the syscall path, a la i386. 2000-12-12 05:21:02 +00:00
nisimura
a141a84ce1 Relocate boot flag detection from consinit() to more logical place. 2000-12-12 04:07:35 +00:00
nisimura
80195863fc This file is a replicant of hp300. The following is peculair to
the original HPBSD implementation and HP hardware design.

 * Portions of the last segment of KVA space (0xFFF00000 -
 * 0xFFFFFFFF) are mapped for a couple of purposes.  0xFFF00000
 * for UPAGES is used for mapping the current process u-area
 * (u + kernel stack).  The very last page (0xFFFFF000) is mapped
 * to the last physical page of RAM to give us a region in which
 * PA == VA.  We use the first part of this page for enabling
 * and disabling mapping.  The last part of this page also contains
 * info left by the boot ROM.

Nuke lptpa because that is irrelavant for LUNA.
Put #if defined(M68040) for consistency postponing efforts of LUNA-2.
2000-12-12 04:06:08 +00:00
mycroft
0175db6e40 #ifdef KTRACE some stuff. 2000-12-12 03:33:16 +00:00
bjh21
afb44982ee Correct the mangled-vectors check. 2000-12-11 23:51:58 +00:00
bjh21
0692c35dda Since BBBB correctly disables the CPU cache at startup, we now decide whether
to leave it disabled based on the bottom bit of cpu0's cf_flags.
2000-12-11 23:46:50 +00:00
onoe
9c25e9208a Port 'an' driver for Aironet PC4500/PC4800 IEEE802.11 card from FreeBSD.
This is very adhoc work for IETF meeting.
- Since it seems that 'an' and 'wi' have similar hardware, low level
  functions should be shared.
- There are PCI/ISA cards of Aironet but not supported yet.
- The wiconfig interface is changed so that wiconfig cannot be used.
- 'ancontrol' of FreeBSD is not ported.
- Only infrastructure mode is tested.
- WEP is not supported.

Though I only have an Aironet card, Cisco card should be expected to work.
2000-12-11 23:16:50 +00:00
bjh21
d606f7e6e0 Move most of the RISC OS shutdown into BASIC code.
Issue Service_PreReset to get the hardware to a sane state.
Use *ShutDown to log off fileservers.
Use the correct arguments to Cache_Control.
Using Service_PreReset seems to have rendered the Podule_ReadID trick
unnecessary, so g/c it.
2000-12-11 22:19:18 +00:00
scw
b875ed466e Some micro-optimisations to _spl() and _splraise(), saving one instruction
in the former, and three to seven in the latter.
2000-12-11 20:05:33 +00:00
eeh
ce7f4ef73f Don't use rwindow_save() since the stack has already been made COW. 2000-12-11 18:51:55 +00:00
marcus
83334549fb Initial import of port "dreamcast" (cloned from port "evbsh3"). 2000-12-11 18:19:12 +00:00
mycroft
9a8fbe25bc Handle the VM86-mode syscall problem by changing the syscall vector when
jumping in or out of VM86 mode.
2000-12-11 17:36:03 +00:00
mycroft
1ef2795be9 Separate the syscall handlers into two versions -- one which does ktrace, and
one which doesn't.  Dynamically switch.
There's more to do on this, but I have to go to work.
2000-12-11 16:49:15 +00:00
tsutsui
c8a3a939e3 space -> TAB 2000-12-11 15:38:43 +00:00
tsutsui
7212823f47 Set USPACE_ALIGN to USPACE on mips. 2000-12-11 15:37:32 +00:00
tron
d0de1ec852 Protect against multiple inclusion. 2000-12-11 11:39:06 +00:00
tron
c6cdb692f3 Include "machine/frame.h" to avoid lint errors while building "libc". 2000-12-11 10:22:55 +00:00
mycroft
e6d33b69ec Nuke reference to trace.h. 2000-12-11 05:41:06 +00:00
mycroft
0f17615da7 There is no Berkeley code in any of these files. 2000-12-11 05:37:01 +00:00
mycroft
f495cd9dc6 Introduce 2 new flags in types.h:
* __HAVE_SYSCALL_INTERN.  If this is defined, e_syscall is replaced by
  e_syscall_intern, which is called at key places in the kernel.  This can be
  used to set a MD syscall handler pointer.  This obsoletes and replaces the
  *_HAS_SEPARATED_SYSCALL flags.
* __HAVE_MINIMAL_EMUL.  If this is defined, certain (deprecated) elements in
  struct emul are omitted.
2000-12-11 05:28:59 +00:00
mycroft
6a4dfe5f24 Slight tweak. 2000-12-11 02:48:07 +00:00
scw
5d5ebb1b73 Simplify the reboot code:
Always jump through the PROM's reset vector, regardless of board type.
  Fix a stack offset problem in the mvme147 reset code path.
2000-12-10 20:00:21 +00:00
eeh
264fbb89af Cleanup types in DEBUG printf()s. 2000-12-10 19:52:17 +00:00
eeh
40638d9f35 Zero proc 0 stack pages so the pcb is cleared out before use. 2000-12-10 19:33:02 +00:00
mycroft
66610a4779 Introduce PROC_PC(), which is used to get a process's user PC. If this is
defined, call addupc_intr() directly from statclock() in the system time case,
using the same P_OWEUPC path if the copyin/copyout fails.
Use this in i386 to remove profiling code from the normal userret() path.
2000-12-10 19:29:30 +00:00
chs
b9423d9d52 in pmap_enter(), do not mark the page modified just because we mapped it
for write to a kernel address.  callers may now use the "flags" argument
to cause this to happen when desired.
2000-12-10 19:25:44 +00:00
scw
8ace7abc75 A small splx()/spl0()/soft interrupt related optimisation. If we're
dropping to spl0, use inline code to check if a soft interrupt is
pending instead of taking the hit of a function call to do the check.
2000-12-10 18:43:02 +00:00
scw
c5b6f43634 Define splzs()' to be splserial()' instead of `spl4()', which was
wrong anyway since it blindly set SPL to 4 regardless of the prevailing
level.
2000-12-10 18:00:24 +00:00
bjh21
4f1ee09e5f It looks like UBC_WINSIZE needs to be at least PAGE_SIZE. 2000-12-10 14:28:45 +00:00
jdolecek
1683c206a4 provide dymmy symbol 'syscall' to make ppc kernels
linkable after recent emul changes - it's used in emul_netbsd and friends
XXX this is probably wrong solution; should powerpc have separate
XXX syscall() as other ports do ?
2000-12-10 12:49:54 +00:00