Commit Graph

108 Commits

Author SHA1 Message Date
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
fvdl cec79c16b4 Include sys/types.h or u_int* 2002-05-30 00:36:42 +00:00
fvdl b16e023917 Enable syscall/sysret insn use. They have the potential to lead to
a faster system call path (but currently won't be much faster).
Signal trampoline to be converted.

Rename eflags -> rflags where appropriate.
2002-05-28 23:11:38 +00:00
fvdl 8b277a3d68 Add definition for CPU-private data (in a remapped page in the data
segment). Somewhat of a kludge to be able to switch stack pointers
in in the syscall entry point without clobering a register, avoiding
the terror of 'swapgs'.
2002-05-28 23:09:36 +00:00
fvdl cfe60d7a95 Shuffle order of selectors around to appease syscall/sysret (bah). 2002-05-28 23:07:35 +00:00
fvdl 92f44882b8 rdmsr/wrmsr don't have 64 bit versions, fix the inline functions. 2002-05-28 23:06:28 +00:00
fvdl 5659e1960c Remove use of pcb_fs and pcb_gs. 2002-05-26 12:19:38 +00:00
fvdl f6d35976a9 Remove fs and gs fields. 2002-05-26 12:08:49 +00:00
fvdl 1371b7fb28 Don't stuff fs and gs in the PCB, they need to be dealt with in
the trapframe.
2002-05-26 12:07:40 +00:00
fvdl 66f94c684f Move the kernel to the upper 4G of virtual address space and use
-mcmodel=kernel.
2002-05-26 00:23:49 +00:00
thorpej 204183c0fa * Add "pcitag_t *pba_bridgetag" to pci_attach_args. This is set to
NULL for root PCI busses.  For busses behind a bridge, it points to
  a persistent copy of the bridge's pcitag_t.  This can be very useful
  for machine-dependent PCI bus enumeration code.
* Implement a machine-dependent pci_enumerate_bus() for sparc64 which
  uses OFW device nodes to enumerate the bus.  When a PCI bus that is
  behind a bridge is attached, pci_attach_hook() allocates a new PCI
  chipset tag for the new bus and sets it's "curnode" to the OFW node
  of the bridge.  This is used as a starting point when enumerating
  that bus.  Root busses get the OFW node of the host bridge (psycho).
* Garbage-collect "ofpci" and "ofppb" from the sparc64 port.
2002-05-16 01:01:28 +00:00
thorpej dada8613e1 Let machine-dependent code specify how to enumerate the bus.
Currently, everyone uses pci_enumerate_bus_generic().
2002-05-15 19:23:51 +00:00
jdolecek 77a65b5e56 use _KERNEL_OPT rather than _KERNEL && !_LKM 2002-05-11 09:39:25 +00:00
thorpej 510cbd8934 Revert revision 1.3. 2002-05-03 17:52:17 +00:00
eeh be9ab3e5db Provide _LP64 definition if we are generating LP64 binaries. 2002-05-03 00:06:55 +00:00
atatat d1b3852365 Add the INCLUDE_CONFIG_FILE option to all config files. In config
files that are generic (ie, GENERIC, GENERICSBC, GENERIC32, ALL, or
ALPHA), it is uncommented.
2002-04-25 15:06:20 +00:00
wiz 8aedc259f8 Don't cdev_decl(pms). 2002-04-19 02:10:17 +00:00
wiz 5b79e27a96 This port never even had opms -- remove line referencing it. 2002-04-18 13:18:29 +00:00
mycroft 558b4fb278 Switch from de to tlp by default. 2002-04-17 02:22:41 +00:00
thorpej eedd94475c * Move the mii_bitbang attribute into dev/mii/files.mii
* Pull in dev/mii/files.mii from conf/files, rather than playing
  the magic "files include order" dance in N machine-dependent
  configuration definitions.
2002-04-16 20:50:16 +00:00
gmcgarry 6e066ba77a Add commented-out USERCONF option. Mainly useful for install media
and can be optionally enabled based on miniroot and ramdisk size
requirements.
2002-04-12 08:10:45 +00:00
lukem d213d804f7 Rename MEMORY_DISK_SIZE (formerly MINIROOTSIZE) to MEMORY_DISK_ROOT_SIZE,
which was suggested by Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> as
being more consistent with what it's controlling...
2002-04-02 05:30:34 +00:00
chs e0a7781fc7 avoid accounting errors in pmap_enter() by only updating the counters
once the operation can no longer fail.  fixes PR 16028.
2002-03-27 04:47:28 +00:00
fvdl 2f5a2ef5af Start signal stack at -128(%rsp), like the ABI specifies. 2002-03-26 15:02:42 +00:00
christos 7e277b5782 kill remaining PS_STRINGS instances. 2002-03-20 17:59:22 +00:00
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
martin 94881fb123 Rename ISDN devices, per discussion on tech-kern. The network devices
become ippp (ISDN ppp) and irip (ISDN raw IP). The character device now
are called: /dev/isdn (isdnd <-> kernel communication), /dev/isdnctl (dialing
and other control), /dev/isdntrc* (tracing), /dev/isdnbchan* (raw B channel
access, i.e. for user land PPP) and /dev/isdntel* (telephone devices, i.e.
for answering machines).
2002-03-16 16:55:51 +00:00
lukem cd19d52695 * rename MINIROOTSIZE to MEMORY_DISK_SIZE, so that all md(4) options
are now consistently named
* fold opt_mdsize.h into opt_md.h
2002-03-10 19:56:37 +00:00
thorpej a180cee23b Pool deals fairly well with physical memory shortage, but it doesn't
deal with shortages of the VM maps where the backing pages are mapped
(usually kmem_map).  Try to deal with this:

* Group all information about the backend allocator for a pool in a
  separate structure.  The pool references this structure, rather than
  the individual fields.
* Change the pool_init() API accordingly, and adjust all callers.
* Link all pools using the same backend allocator on a list.
* The backend allocator is responsible for waiting for physical memory
  to become available, but will still fail if it cannot callocate KVA
  space for the pages.  If this happens, carefully drain all pools using
  the same backend allocator, so that some KVA space can be freed.
* Change pool_reclaim() to indicate if it actually succeeded in freeing
  some pages, and use that information to make draining easier and more
  efficient.
* Get rid of PR_URGENT.  There was only one use of it, and it could be
  dealt with by the caller.

From art@openbsd.org.
2002-03-08 20:48:27 +00:00
simonb 6f0fb25121 Don't need to declare phys_map - it is declared in <uvm/uvm_extern.h>. 2002-03-04 02:43:22 +00:00