Commit Graph

4609 Commits

Author SHA1 Message Date
mycroft 7a70c438c8 Couple more tweaks to eliminate unnecessary cycles. 2000-12-09 02:46:17 +00:00
mycroft 57fdd67be5 Do the resched check *only* on an AST.
Also, there is no reason to save the original PC; there are no restartable
syscalls that change the PC -- and even if there were, they wouldn't do it
in the restart case.
2000-12-09 02:18:16 +00:00
mycroft 5415a63e13 Rework the way the nested task and trace flags are handled when entering the
old (lcall) syscall gate.  This speeds up that path a little.
2000-12-08 23:14:04 +00:00
mycroft 985a81f23b GC unneeded code. 2000-12-08 22:32:09 +00:00
thorpej 55ecab37a0 Fix a silly MP race condition introduced in the previous. 2000-12-07 21:53:46 +00:00
thorpej ac083d0b74 Use a pool cache for PDPs. This results in a 20% improvement in a
loop of 10000 fork/exit operations on a 400MHz Celeron.
2000-12-07 20:19:05 +00:00
thorpej 0abaa8b70d Nothing calls pmap_release() except for pmap_destroy(). Merge the two. 2000-12-07 17:12:21 +00:00
thorpej b4b01fe8e6 Nothing calls pmap_pinit() except for pmap_create(), so merge the two. 2000-12-07 17:09:26 +00:00
chs 4fa4734937 go back to the first version of the pte/pde dance now that kvtopte()
has been changed to consisently return a pointer into the recursive
page table mapping.
2000-12-06 03:20:35 +00:00
chs 2a95fc3517 in kvtopte(), return the mapping of the pde in the recursive page-table
mapping space rather than the mapping in the kernel address space.
2000-12-06 03:13:47 +00:00
jdolecek 94e024dc14 constify 2000-12-05 10:45:09 +00:00
jdolecek dae7d6d77c actually, pte is normally in user address space, but can also be in kernel
address space for LARGEPAGES kernel; to handle both, do the same dance
as for loc
2000-12-05 10:26:12 +00:00
ad f237da87bf Hook the iop device in. 2000-12-03 13:19:07 +00:00
jdolecek 2b0dca1878 db_disasm(): pte is in kernel address space, so use kvtopte() to get pde,
otherwise it would trip over KASSERT() in vtopte() and cycle
2000-12-02 19:34:54 +00:00
jdolecek e9b63338d7 add prototype for ibcs2_syscall() 2000-12-02 16:13:34 +00:00
jdolecek 65203b4ec6 if IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL is defined, put ibcs2_syscall to
emul_ibcs2
define IBCS2_MACHDEP_HAS_SEPARATED_SYSCALL in i386 ibcs2_machdep.h
2000-12-02 16:09:44 +00:00
jdolecek 6719ee1cf7 as discussed on tech-kern, put linux and ibcs2 syscall code to separate
files and change syscall() to call p->p_emul->e_syscall() if it's not NULL
2000-12-02 16:03:23 +00:00
soren ff0f7c1ab4 No longer used. 2000-12-01 07:56:18 +00:00
soren 2cc519bba5 <pc/display.h> has been moved to <dev/ic/pcdisplay.h>. 2000-12-01 07:55:10 +00:00
jdolecek 73f3cd8c7e LKMify 2000-11-29 21:51:49 +00:00
aymeric 5deecf29d2 Fall back to previous memory segments detection code if BIOS reports no
correct memory segment.
This prevents some systems from losing with `can't find end of memory'.
Discussed with Bill Sommerfeld.
2000-11-29 09:56:02 +00:00
augustss f9450fa993 Put neo* in alphabetical position. 2000-11-28 19:44:07 +00:00
thorpej 3f877e127e Add auich(4) and neo(4). 2000-11-28 05:18:42 +00:00
soren 66864e1f05 Removed increased BUFCACHE/BUFPAGES. 2000-11-27 08:55:41 +00:00
jdolecek cee3939088 comment out entries accidentaly committed together with previous
change
2000-11-26 20:48:39 +00:00
ad 57ea462da2 lsu -> ld, by popular request. 2000-11-26 17:44:02 +00:00
jdolecek bc435e5551 rename COMPAT_locore.s to COMPAT_sigcode.s - that is more suitable name for it
make the files compilable within LKM
2000-11-26 11:18:20 +00:00
takemura 3c9d9276dc Add new powerhook argument values, PWR_SOFTSUSPEND, PWR_SOFTSTANDBY and
PWR_SOFTRESUME. Apm calls powerhook with the values in normal interrupt
priority level while others are protected with splhigh().
2000-11-26 11:08:57 +00:00
itojun c40695f5ad a complete kernel for wildlab LAMB, http://www.wildlab.com/. 2000-11-26 03:28:41 +00:00
chs fa19fe52db adjust the spinlock macros in the non-MULTIPROCESSOR, non-LOCKDEBUG case
so that gcc will think that static spinlock are used.
this allows us to remove the ugly conditionalization of
static spinlock declarations.
2000-11-24 03:59:07 +00:00
chs c01c2504a2 examine the PDE in addition to the PTE when checking for valid mappings. 2000-11-23 21:44:52 +00:00
jdolecek 818062390e Intel recommends to print cpu serial number as six dash-separated nibbles
(XXXX-XXXX-XXXX-XXXX-XXXX-XXXX), make it so
2000-11-22 16:41:56 +00:00
jdolecek 09c6390523 make trap_type[] const 2000-11-21 21:27:04 +00:00
jdolecek 3323852a95 put compat-specific locore code to separate *_locore.s files 2000-11-21 21:13:23 +00:00
jdolecek baae0324b9 restructure struct emul and execsw, in preparation to make emulations LKMable:
* move all exec-type specific information from struct emul to execsw[] and
  provide single struct emul per emulation
* elf:
  - kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
    per emulation and contains pointer to respective probe function
  - interp is allocated via MALLOC() rather than on stack
  - elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
  to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
  emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
  part of appropriate execsw[] entry
* constify couple of structures
2000-11-21 00:37:49 +00:00
jdolecek 0630488eda fix typo 2000-11-20 20:07:36 +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
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
soren 046ce58634 Enable com at cardbus. 2000-11-20 02:00:46 +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
lukem a687c7deac pull up stuff changed in GENERIC from 1.370 - 1.377, appropriately
commented out if it's not relevant to a laptop
2000-11-18 02:08:30 +00:00
jdolecek 97669de104 make i386_nocpuid_cpus[] and i386_cpuid_cpus[] const - this pushes
another ~1.4KB to text section
2000-11-16 17:00:17 +00:00
jdolecek def6d1b4ac Newer Intel PIII processors also make available Brand ID value through
cpuid instruction, which is used to differentiate between Celeron, common PIII
and PIII Xeon; recognize it and print appropriate info if applicable

Information taken from Intel's (R)
Intel Processor Identification and the CPUID Instruction, AP-485
2000-11-16 10:19:02 +00:00
jdolecek a9ad986a90 Update cpuid table according to information sent by Scott Telford
in port-i386/11502, with only sligh change for Coppermine entry -
cpus with family 6, model 8 are not all Celerons, they can be
either common PIII, Xeon or Celeron
2000-11-16 09:06:17 +00:00
jdolecek ea9f7ed6d5 introduce SIGACTION_PS() macro - this is similar to SIGACTION(), but works
for (struct sigacts *) instead of (struct proc *)
2000-11-15 21:13:58 +00:00
thorpej 9298fd52fc Garbage-collect some more stuff. 2000-11-15 19:30:10 +00:00
enami 038ca0a146 Make isa_machdep.c compile again. 2000-11-15 02:00:31 +00:00
enami 1ef516e9be Pull in uvm_extern for PAGE_SIZE. 2000-11-15 01:59:35 +00:00
thorpej 990d23039d NBPG -> PAGE_SIZE. 2000-11-14 22:55:51 +00:00
thorpej ec0069dd37 NBPG -> PAGE_SIZE 2000-11-14 22:55:05 +00:00