freebsd-dev/sys/amd64/include
Marcel Moolenaar a36bdc0606 Introduce the cpumask_t type. The purpose of the type is to create a
level of abstraction for any and all CPU mask and CPU bitmap variables
so that platforms have the ability to break free from the hard limit
of 32 CPUs, simply because we don't have more bits in an u_int. Note
that the type is not supposed to solve massive parallelism, where
the number of CPUs can be larger than the width of the widest integral
type. As such, cpumask_t is not supposed to be a compound type. If
such would be necessary in the future, we can deal with the issues
then and there. For now, it can be assumed that the type is integral
and unsigned.

With this commit, all MD definitions start off as u_int. This allows
us to phase-in cpumask_t at our leasure without breaking anything.
Once cpumask_t is used consistently, platforms can switch to wider
(or smaller) types if such would be beneficial (or not; whatever :-)

Compile-tested on: i386
2004-03-20 20:41:40 +00:00
..
pc use __packed. 2002-09-23 18:54:32 +00:00
_inttypes.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
_limits.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
_stdint.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
_types.h Introduce the cpumask_t type. The purpose of the type is to create a 2004-03-20 20:41:40 +00:00
acpica_machdep.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
apicreg.h MFi386: remove APIC_IRQ* defines that are no longer used. 2003-12-11 02:48:25 +00:00
apicvar.h Initial landing of SMP support for FreeBSD/amd64. 2003-11-17 08:58:16 +00:00
asm.h MFi386: i386/include/asm.h rev 1.11: Do not abuse ##. 2003-06-02 05:59:35 +00:00
asmacros.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
atomic.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
bus_amd64.h Implement the bus_space_map() function to allocate resources and initialize 2003-09-23 08:22:34 +00:00
bus_dma.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
bus_memio.h AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
bus_pio.h AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
bus.h AMD64 physical space is much larger than i386, de-i386 the bus_space and 2003-05-12 02:44:37 +00:00
clock.h Initial landing of SMP support for FreeBSD/amd64. 2003-11-17 08:58:16 +00:00
cpu.h Sync with i386 version. The quality initialization was missing and some 2003-09-23 00:18:45 +00:00
cpufunc.h Don't implement anything in the ffs family in <machine/cpufunc.h> 2004-03-11 13:38:54 +00:00
cputypes.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
critical.h Fix syntax errors and wrong function prototypes in several MD header 2004-03-05 09:19:59 +00:00
db_machdep.h Initial port to amd64 after repocopy from i386. Note that the 2003-05-30 01:01:07 +00:00
elf.h Add sysentvec->sv_fixlimits() hook so that we can catch cases on 64 bit 2003-09-25 01:10:26 +00:00
endian.h MFi386 rev 1.37: constant-friendly bswap macros 2003-09-22 22:37:49 +00:00
exec.h
float.h Implement fpclassify(): 2003-02-08 20:37:55 +00:00
floatingpoint.h o Move the contents of <machine/floatingpoint.h> over to 2003-01-19 06:01:33 +00:00
fpu.h We can simplify a lot of things now that we don't have to worry about 2004-01-28 23:55:58 +00:00
frame.h Update the graffiti. 2003-11-08 04:39:22 +00:00
ieeefp.h Update the graffiti. 2003-11-08 04:39:22 +00:00
in_cksum.h
intr_machdep.h Shuffle the APIC interrupt vectors around a bit: 2003-11-14 19:10:13 +00:00
legacyvar.h MFi386 pci_bus.c 1.102 legacyvar.h 1.4: rename nexus_pcib to legacy_pcib 2003-09-23 00:03:44 +00:00
limits.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
md_var.h Re-add user_dbreg_trap() for debug register support 2004-01-29 00:05:03 +00:00
metadata.h Slight reorg and added AMD64 support. A couple of the MODINFOMD_* values 2003-05-01 03:31:18 +00:00
mptable.h Convert a couple of pointers to integers for source compatability with 2003-11-14 22:23:30 +00:00
mutex.h Kill the ASM versions of the mtx_lock_spin and friends. They were never 2003-12-06 23:17:18 +00:00
param.h Since we have additional kernel virtual address space, allow the buffer 2003-12-20 20:03:10 +00:00
pcb_ext.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
pcb.h Add dbreg struct definitions for /proc/*/dbregs and a place to store the 2004-01-28 23:54:31 +00:00
pci_cfgreg.h MFi386: nuke pci_cfgintr 2004-03-13 19:19:13 +00:00
pcpu.h Argh! Followup to previous commit. I checked in the patch with an 2003-11-20 23:49:28 +00:00
pmap.h Remove unused declarations. (Some time ago, these variables became fields 2004-03-07 07:13:15 +00:00
proc.h Cosmetic and/or trivial sync up with i386. 2003-11-21 03:02:00 +00:00
profile.h Remove `static' prototype from header file. 2004-01-06 20:36:21 +00:00
psl.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
ptrace.h Move the definition of PT_[GS]ET{,DB,FP}REGS from the MD ptrace.h to the 2002-03-16 00:25:53 +00:00
reg.h Add dbreg struct definitions for /proc/*/dbregs and a place to store the 2004-01-28 23:54:31 +00:00
reloc.h
resource.h
runq.h Reconfigure the runq macros to use the 64 bit ffs/bsf routines instead 2003-12-06 23:24:18 +00:00
segments.h Initial landing of SMP support for FreeBSD/amd64. 2003-11-17 08:58:16 +00:00
setjmp.h Make this more compatable with libc_r. Make the internal types for storing 2003-06-02 21:49:35 +00:00
sf_buf.h - Modify alpha's sf_buf implementation to use the direct virtual-to- 2003-11-16 06:11:26 +00:00
sigframe.h Commit MD parts of a loosely functional AMD64 port. This is based on 2003-05-01 01:05:25 +00:00
signal.h Update the graffiti. 2003-11-08 04:39:22 +00:00
smp.h MFi386: mp_topology(). 2004-01-28 23:51:16 +00:00
specialreg.h MFi386: add THERMTRIP msr values 2004-01-28 23:47:22 +00:00
stdarg.h Add __va_copy and make it always visible, in spite of the __ISO_C_VISIBLE 2003-10-24 02:50:39 +00:00
sysarch.h Provide sysarch(2) prototypes in the MD sysarch.h headers. While I'm 2004-01-09 16:52:09 +00:00
trap.h Activate SSE/SIMD. This is the extra context switching support that 2001-07-12 06:32:51 +00:00
tss.h Initial landing of SMP support for FreeBSD/amd64. 2003-11-17 08:58:16 +00:00
ucontext.h Update the graffiti. 2003-11-08 04:39:22 +00:00
varargs.h Standardize idempotentcy ifdefs. Consistently use _MACHINE_VARARGS_H_ 2003-09-01 03:01:45 +00:00
vmparam.h Increase VM_KMEM_SIZE_MAX from 200MB to 400MB. 2003-12-07 04:51:04 +00:00