Commit Graph

149 Commits

Author SHA1 Message Date
thorpej
4bf871a755 Add trailing ; to CFATTACH_DECL. 2002-10-02 16:02:08 +00:00
thorpej
f59e5352f2 Use CFATTACH_DECL(). 2002-10-01 04:21:32 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
provos
0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej
d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
thorpej
71404bb533 Don't include <sys/map.h>. 2002-09-25 22:21:01 +00:00
simonb
63096043b3 Use "#define\t" instead of "#define ". 2002-09-22 08:30:56 +00:00
chs
c081614ea2 it really helps to get the stub right before cutting + pasting it 27 times.
alas, I did not.  doh.
2002-09-22 07:53:39 +00:00
chs
55e1f79335 add pmap_remove_all() hook (empty on most platforms so far). 2002-09-22 07:17:08 +00:00
gmcgarry
dca80f08fd Add __HAVE_MD_RUNQUEUE flag for MD code to override MI run queue primitives. 2002-09-22 04:11:32 +00:00
lukem
3ea2e21f82 enable USERCONF by default; it's small and extremely useful to have available. 2002-09-18 02:43:53 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
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