Commit Graph

137 Commits

Author SHA1 Message Date
thorpej
139cdc3125 Make nbuf, nswbuf, and bufpages unsigned. Make all operations on these
variables unsigned, and update places where their values are printed.
2002-08-25 20:21:33 +00:00
thorpej
c47fa45915 Make this compile without KTRACE or SYSTRACE. 2002-08-25 18:39:40 +00:00
thorpej
88d1869bb4 No need for two copies of the i8253 register definitions. Remove the
i386-specific copy, and adjust its users to add in the timer i/o base
as necessary.
2002-08-25 18:10:32 +00:00
thorpej
3912e469dd Rename cdev_systrace_init() to cdev_clonemisc_init(), so it can
be properly used by any misc. cloning device.  While here, correct
a comment to indicate that "open" is the only entry point and that
everything else is handled with fileops.
2002-07-19 16:38:14 +00:00
fvdl
c24cb24f0d Update comment. 2002-07-14 12:30:36 +00:00
fvdl
ee925d3924 Consistently handle segment selectors in traps and interrupts. 2002-07-14 12:20:45 +00:00
fvdl
e539a84832 Since the return address is now part of struct sigframe, adjust the stack
accordingly to match alignment when copying it out.
2002-07-10 01:55:43 +00:00
fvdl
4ddf293c2e Hand-align the fxsave area to be able to determine its offset in structures
more precisely.
2002-07-10 01:54:00 +00:00
fvdl
728043f0da Add definitions for 32bit sysarch calls. 2002-07-07 23:27:00 +00:00
fvdl
c1593a7671 Implement a few 32bit sysarch calls. 2002-07-07 23:25:37 +00:00
fvdl
7cc42e6abb Move struct savefpu outside ifdef _KERNEL for the benefit of userland
code that includes <machine/pcb.h>
2002-07-06 10:43:32 +00:00
fvdl
405b1a8bb6 Add mtrr.c 2002-07-06 10:23:06 +00:00
fvdl
8b6c180747 Previous commit left a piece of old code in that would leak top-level
PTPs; remove it.
2002-07-05 16:52:39 +00:00
thorpej
011d4d5f44 Add kernel support for having userland provide the signal trampoline:
* struct sigacts gets a new sigact_sigdesc structure, which has the
  sigaction and the trampoline/version.  Version 0 means "legacy kernel
  provided trampoline".  Other versions are coordinated with machine-
  dependent code in libc.
* sigaction1() grows two more arguments -- the trampoline pointer and
  the trampoline version.
* A new __sigaction_sigtramp() system call is provided to register a
  trampoline along with a signal handler.
* The handler is no longer passed to sensig() functions.  Instead,
  sendsig() looks up the handler by peeking in the sigacts for the
  process getting the signal (since it has to look in there for the
  trampoline anyway).
* Native sendsig() functions now select the appropriate trampoline and
  its arguments based on the trampoline version in the sigacts.

Changes to libc to use the new facility will be checked in later.  Kernel
version not bumped; we will ride the 1.6C bump made recently.
2002-07-04 23:32:02 +00:00
fvdl
cf9727c9c6 Uncomment x86_64_iopl args. 2002-07-04 10:49:33 +00:00
fvdl
105d80aaa0 The double fault exception doesn't push an error. 2002-07-04 10:47:02 +00:00
fvdl
9fe7e89bfe Use a seperate stack for the double fault trap. 2002-07-04 10:46:21 +00:00
fvdl
860a1c9ae6 Enable the iopl syscall. 2002-07-04 10:44:00 +00:00
fvdl
03068e0f6f Print a little more info for unhandled traps. For the time being,
halt the CPU, don't call panic() (until DDB is done).
2002-07-04 10:42:00 +00:00
fvdl
9ec0782af4 Make this look a little more like -current i386 pmap.c 2002-07-04 10:38:26 +00:00
fvdl
4839f70ff2 Fix parameter passed to init_x86_64. 2002-07-04 10:34:22 +00:00
thorpej
e09f5065d0 During signal delivery, arrange to have the signal handler invoked
directly, using the trampoline only for the return path.
2002-06-25 01:24:49 +00:00
fvdl
0b5350133b Add MTRR support. 2002-06-18 08:35:14 +00:00
fvdl
7a777905af Make this compile again. 2002-06-18 08:34:57 +00:00
fvdl
ff5489fd50 MTRR includes. 2002-06-18 08:31:42 +00:00
fvdl
4622ad6f14 MTRR support for x86_64. Will be shared with i386 later. 2002-06-18 08:30:33 +00:00
christos
3b50728cf4 MD systrace gluons. 2002-06-17 16:32:57 +00:00
eeh
863fc84f4d Provide the correct architecture for HW_MACHINE_ARCH so things like
"sysctl -p" can tell they are in 32-bit land.
2002-06-14 18:28:19 +00:00
fvdl
c7647a1294 Fix up the FP code some, and make it deliver XMM exceptions. Adapt
sigframe a bit.
2002-06-12 19:13:27 +00:00
fvdl
a35e1a5e5b Match DIAGNOSTIC spl code in new system call entry. We may return
through the old one in the case of a 32bit exec, causing the check
to fire.
2002-06-07 00:06:21 +00:00
fvdl
c0a27f0970 Enable (empty) procfs_machdep.c 2002-06-06 15:58:23 +00:00
simonb
97f56c7642 Don't install <machine/rnd.h>. 2002-06-06 03:30:56 +00:00
fvdl
71f7cef933 Fix arglength passed to ktrsyscall for 32bit calls. 2002-06-05 22:50:08 +00:00
fvdl
39f41c9002 The intr counters are supposed to be long (==> .quad in assembler). 2002-06-05 21:59:32 +00:00
fvdl
1c3269bdc6 Change kmem access check to match the actual kva layout. 2002-06-05 21:58:30 +00:00
fvdl
18c6a6eceb Correct arg passing to ktrsyscall once again (doh). 2002-06-05 20:54:44 +00:00
fvdl
0fc3b521af Move the IDTVEC macro here, mirroring Jason's change for the i386 port. 2002-06-05 19:17:34 +00:00
fvdl
b1bff0ba73 Adapt for non-traditional cpp usage. 2002-06-05 19:16:18 +00:00
fvdl
9117c00bad Set output arch to i386:x86-64. From Jason. 2002-06-05 15:06:56 +00:00
fvdl
eb3b53295f Don't forget to put the instruction size in tf_err on system call
entry, for the sake of syscall restart.
2002-06-05 14:59:37 +00:00
fvdl
e4eac0d964 Fix rdtsc and rdpmc inlines, and fixup rnd.h to do the right thing. 2002-06-04 17:52:46 +00:00
fvdl
9c71037485 Remove all i386 host bridges, as they don't apply. Remove pchb_rndattach
call for now (may be back later).
2002-06-04 17:51:30 +00:00
fvdl
99193cfa98 Woops, pass the correct argsize to ktrsyscall. 2002-06-04 15:45:05 +00:00
fvdl
ab19cd2899 Clear P_32 on native exec (from eeh in the sparc64 port). 2002-06-04 15:44:34 +00:00
fvdl
c029f886c8 Propagate P_32 flag on fork. Use correct trampoline for 32bit return. 2002-06-04 12:58:13 +00:00
fvdl
2c7bad720d For 32bit execs, frob the stackframe to return via the old system call
return path.
2002-06-04 11:14:21 +00:00
fvdl
90c2a2ddc1 Fix up argument passing to ktr_syscall. 2002-06-04 11:12:18 +00:00
fvdl
01fbe9c413 Drink the swapgs kool-aid.
Enable the use of syscall/sysret as the default system cal entry
point.
2002-06-03 18:23:16 +00:00
fvdl
619aaa1337 Set COPTS to -O by default. 2002-06-03 18:18:43 +00:00
drochner
d2b9876081 move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling
2002-06-02 14:44:35 +00:00