fvdl
a4880cb372
Export the ioapic softc linked list, for the benefit of the mpbios code.
2003-01-12 23:20:17 +00:00
fvdl
3cef21b0f5
Pass acpi_softc down to mpacpi functions.
2003-01-10 00:45:52 +00:00
fvdl
c2ff6d5b83
Add various external declarations to accomodate ACPI MP probing as an
...
alternate method to MPBIOS probing. Move some stuff common to the two
methods into mpconfig.h
2003-01-07 18:48:44 +00:00
sommerfeld
52b083a154
Add symbolic names for MSR's used by SYSENTER/EXIT.
...
(I was experimenting a while back, might as well commit this one file..)
2003-01-05 22:47:13 +00:00
kristerw
2ae40935fb
The correct way to decorate objects with attributes is to use __attribute__
...
instead of the synonyms understood by gcc.
2002-12-28 20:11:57 +00:00
gmcgarry
7443ad1b01
Move to MI runqueue functions.
2002-12-17 19:47:15 +00:00
jdolecek
30f7194bc4
use the __HAVE_CPU_MAXPROC hook to limit kern.maxproc to number
...
of available GDT slots
add code in init386() to force maxproc to be maximum cpu_maxproc()
this fixes port-i386/1635 by John Kohl
2002-12-16 18:31:08 +00:00
fvdl
4bd73a650e
Remove leftover declarations used for debugging purposes only.
2002-12-16 16:22:50 +00:00
christos
09e9a5cde9
This new file is wanted by compat_darwin.
2002-12-12 17:41:53 +00:00
joda
86b7f22e4f
cpuid feature bit 30 is set on IA-64 (in x86 mode)
2002-12-11 13:50:14 +00:00
fvdl
a167f47c0c
Since a CPU may spin waiting for another CPU to handle an IPI, an
...
IPI must be the very first thing to be handled in splx(), if it
had been blocked before. Change things around a bit to guarantee
this.
2002-12-11 12:02:07 +00:00
thorpej
e8cc3884de
Rename __LDPGSZ to AOUT_LDPGSZ, to accurately reflect what it is.
2002-12-10 17:14:02 +00:00
thorpej
78ea2dd367
Use __LDPGSZ (which must be == USRTEXT) as the text address for a.out
...
executables, and eliminate the USRTEXT constant, which was only used
by the a.out exec code.
2002-12-10 05:14:24 +00:00
junyoung
6e278393ba
Don't pollute struct cpu_info with throwaway variables.
2002-12-06 14:47:07 +00:00
junyoung
281fa073dc
Display the extended feature flags with non-Intel processors rather than
...
the standard flags. See also PR#19163.
Before:
cpu0: AMD Athlon XP 1800+ (686-class), 1532.11 MHz
cpu0: features 383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
cpu0: features 383f9ff<PGE,MCA,CMOV,FGPAT,PSE36,MMX>
cpu0: features 383f9ff<FXSR,SSE>
After:
cpu0: AMD Athlon XP 1800+ (686-class), 1532.11 MHz
cpu0: features c3cbf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
cpu0: features c3cbf9ff<PGE,MCA,CMOV,PAT,PSE36,MPC,MMXX,MMX>
cpu0: features c3cbf9ff<FXSR,SSE,3DNOW2,3DNOW>
While I'm here, amd_cpuid_cpu_cacheinfo() is an info function rather
than a probe function.
2002-12-06 02:38:25 +00:00
junyoung
a2a55f2564
- FGPAT -> PAT, as documented in Intel manual.
...
- Feature flag 31 is "Signal Break on FERR" (SBF).
2002-12-05 17:25:26 +00:00
fvdl
8848e366f2
For softints, there's no intrframe on the stack, so don't try to use it.
...
Use a seperate lock function (in taking the same lock) instead.
2002-12-01 00:15:36 +00:00
fvdl
1e23499b18
Make biosgeom struct packed, so that it works out on x86_64.
2002-11-30 13:46:26 +00:00
fvdl
6da8034165
Think before committing.. previous wasn't actually needed, the values are
...
guaranteed to fit in 32 bits when loading the kernel into physmem,
and it avoids bootloader incompatibility.
2002-11-29 19:38:24 +00:00
fvdl
6f923c1495
Use long for ssym and esym in btinfo_symtab, so that it works out for
...
both i386 and x86_64.
2002-11-29 19:33:26 +00:00
fvdl
f91cba76ea
Add ci_apicid field.
2002-11-28 21:43:55 +00:00
fvdl
18ad7e80b6
Specify the interrupt frame as the argument to i386_int(un)lock.
2002-11-27 00:41:59 +00:00
lukem
0635de35a3
Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more.
2002-11-26 23:30:07 +00:00
fvdl
e5a9ffde7a
Remove "ioapic.h" include, and always include the intr_find_mpmapping
...
prototype; it's not worth the extra bytes to avoid including this.
2002-11-23 10:37:09 +00:00
lha
2943f5e96b
install intrdefs.h so it can be used by intr.h (and libkvm)
2002-11-23 05:33:11 +00:00
fvdl
23fb62d8f1
Removed unused function. From kristerw.
2002-11-22 21:21:13 +00:00
fvdl
ae4b76c8d3
New interrupt code. The basic idea behind it is to hide the differences
...
in interrupt controllers in struct pic, and try to keep as much
common code as possible. At the lowest (asm) level, this is done
with CPP macros.
The main structure is now struct intrsource, describing an established
interrupt line, of any kind (soft/hard local apic/legacy apic/IO apic).
For quick masking, there may be a maximum of 32 sources per CPU.
Sources can be assigned to any CPU in the MP case, though currently they
all go to the boot CPU.
2002-11-22 15:23:35 +00:00
fvdl
88fb7f6d27
Define a generic PIC structure, used by the interrupt code.
2002-11-22 15:07:58 +00:00
fvdl
99dccacc3c
Interrupt defines that needed to be in a seperate file to avoid cyclic
...
includes.
2002-11-22 15:07:38 +00:00
fvdl
65d1332692
Asm macros for interrupt/trap entry/exit, used in multiple .S files.
2002-11-22 15:07:10 +00:00
perry
c8815bffa1
1) egg, meet face. face, meet egg.
...
2) re-UL KERNBASE, but this time, protect it with #ifndef _LOCORE so we
don't get a big kaboom in .S files.
2002-11-02 17:30:15 +00:00
kristerw
7f2e5abcf1
Revert previous. The assembler bombs on UL integer suffix.
2002-11-02 11:55:24 +00:00
perry
1547f39c5a
/*CONTCOND*/ a while (0) macro
2002-11-02 07:15:07 +00:00
perry
7c42625da4
define KERNBASE with a UL -- eliminates 830 or so lines of lint.
2002-11-02 07:09:23 +00:00
perry
fa3fedc290
/*ARGSUSED*/ one function -- eliminates 414 lint complaints
2002-11-02 07:07:09 +00:00
fvdl
5fca9b943c
Make splsched == splclock, and splserial > splsched. Unfortunately,
...
we have to retain the 'pick unlocked interrupt handler' hack for
the MP case for now.
2002-11-01 01:12:43 +00:00
manu
9b4f3b0464
Introduce an array of supported CPU types by a given arch for Mach-O
2002-10-29 22:22:30 +00:00
fvdl
526dd035ea
Add macros for cpuid family/step, etc shifting. Moved here from
...
machdep.c.
2002-10-25 12:00:11 +00:00
takemura
900b200c92
Moved MI APM definitions into dev/apm.
2002-10-14 02:08:37 +00:00
yamt
3458b8fb93
re-do my previous commit correctly
2002-10-12 14:30:08 +00:00
yamt
663d2c5069
override KSTACK_LOWEST_ADDR and KSTACK_SIZE for redzone.
2002-10-11 17:49:11 +00:00
fvdl
0753142b7c
Add NetBSD RCS Id.
2002-10-11 14:22:56 +00:00
fvdl
1e51cd72a0
Delete pcb_flags.
2002-10-08 20:24:58 +00:00
fvdl
d1cbc91464
Remove ci_lapic_ints from struct cpu_info again, it isn't needed anymore.
2002-10-06 20:40:27 +00:00
fvdl
3319c2f2dc
Add cpu_id field to mp_intr_map structure. Declare mp_nintr.
2002-10-06 20:39:33 +00:00
fvdl
be146319cd
Keep size of struct cpu_info independent of DIAGNOSTIC/LOCKDEBUG
...
(was done in rev. 1.81, got lost in the MP merge).
2002-10-06 18:31:21 +00:00
fvdl
85eaacd06e
Add per-CPU local apic redir table (2 pointers).
2002-10-06 14:28:17 +00:00
fvdl
a2e301721c
cpu_swapin now exists, so remove the empty define.
2002-10-06 12:37:35 +00:00
fvdl
2560973204
If NOREDZONE is defined, keep UPAGES at 2 as before.
2002-10-06 12:37:12 +00:00
fvdl
1176155ea2
Protect against multiple inclusion.
2002-10-05 21:27:52 +00:00