opnsense-src/sys/x86/include
Roger Pau Monné a74bb29ada x86: bump MAX_APIC_ID to 512
Introduce a new define to take int account the xAPIC ID limit, for
systems where x2APIC is not available/reliable.

Also change some of the usages of the APIC ID to use an unsigned int
(which is the correct storage type to deal with x2APIC IDs as found in
x2APIC MADT entries).

This allows booting FreeBSD on a box with 256 CPUs and APIC IDs up to
295:

FreeBSD/SMP: Multiprocessor System Detected: 256 CPUs
FreeBSD/SMP: 1 package(s) x 64 core(s) x 4 hardware threads
Package HW ID = 0
	Core HW ID = 0
		CPU0 (BSP): APIC ID: 0
		CPU1 (AP/HT): APIC ID: 1
		CPU2 (AP/HT): APIC ID: 2
		CPU3 (AP/HT): APIC ID: 3
[...]
	Core HW ID = 73
		CPU252 (AP): APIC ID: 292
		CPU253 (AP/HT): APIC ID: 293
		CPU254 (AP/HT): APIC ID: 294
		CPU255 (AP/HT): APIC ID: 295

Submitted by:		kib (previous version)
Relnotes:		yes
MFC after:		1 month
Reviewed by:		kib
Differential revision:	https://reviews.freebsd.org/D11913
2017-08-10 09:16:40 +00:00
..
xen xen: Code cleanup and small bug fixes 2015-10-21 10:44:07 +00:00
_align.h Implement _ALIGN() using internal integer types. 2016-05-31 13:31:19 +00:00
_inttypes.h Copy powerpc/include/_inttypes.h to x86 and replace i386/amd64/pc98 2011-01-08 18:09:48 +00:00
_limits.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
_stdint.h Add missing dependency on <machine/_limits.h>. 2016-05-31 08:38:24 +00:00
_types.h Define the vm_ooffset_t and vm_pindex_t types as machine-independend. 2017-02-04 12:26:38 +00:00
acpica_machdep.h If x86 CPU implementation of the MWAIT instruction reasonably 2015-05-09 12:28:48 +00:00
apicreg.h Local APIC: add support for extended LVT entries found in AMD processors 2017-02-28 18:48:12 +00:00
apicvar.h x86: bump MAX_APIC_ID to 512 2017-08-10 09:16:40 +00:00
apm_bios.h Move identical copies of apm_bios.h to sys/x86/include, replace them with 2010-11-11 19:36:21 +00:00
bus.h Better support memory mapped console devices, such as VGA and EFI 2015-08-12 15:26:32 +00:00
bus_dma.h Clean up MD pollution of bus_dma.h: 2017-07-01 05:35:29 +00:00
busdma_impl.h Clean up MD pollution of bus_dma.h: 2017-07-01 05:35:29 +00:00
cputypes.h Remove 'cpu' and 'cpu_class' on amd64. 2016-09-15 17:05:54 +00:00
dump.h Factor out duplicated code from dumpsys() on each architecture into generic 2015-01-07 01:01:39 +00:00
elf.h Convert machine/elf.h, machine/frame.h, machine/sigframe.h, 2013-02-20 17:39:52 +00:00
endian.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
fdt.h Retire machine/fdt.h as a header used by MI code, as its function is now 2014-01-05 18:46:58 +00:00
float.h Rationalize BSD license on sys/*/include/float.h 2015-08-05 17:05:35 +00:00
fpu.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
frame.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
init.h msi: add Xen MSI implementation 2014-09-30 16:46:45 +00:00
legacyvar.h Convert rman to use rman_res_t instead of u_long 2016-01-27 02:23:54 +00:00
mca.h Reassign copyright statements on several files from Advanced 2015-04-23 14:22:20 +00:00
metadata.h Move amd64 metadata.h to x86 and share with i386 2016-01-07 19:47:26 +00:00
mptable.h Use fixed-width types for all fields in MP Table structures and pack 2013-12-11 21:19:04 +00:00
ofw_machdep.h Add missing ofw_machdep.h. Make x86 ofw_machdep.h work pc98 too. 2015-08-28 15:41:09 +00:00
pci_cfgreg.h Convert rman to use rman_res_t instead of u_long 2016-01-27 02:23:54 +00:00
psl.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
ptrace.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
pvclock.h Add interface to derive a TSC frequency from the pvclock 2015-02-04 08:33:04 +00:00
reg.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
segments.h Remove constants and comments for unimplemented entries in the default LDT. 2017-05-24 18:54:21 +00:00
setjmp.h Copy amd64 setjmp.h to x86 and replace amd64/i386/pc98 setjmp.h with stubs. 2012-02-28 22:17:52 +00:00
sigframe.h Convert machine/elf.h, machine/frame.h, machine/sigframe.h, 2013-02-20 17:39:52 +00:00
signal.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
specialreg.h Add the AMD MONITORX/MWAITX feature definition introduced in 2017-03-16 03:06:50 +00:00
stack.h Add stack_save_td_running(), a function to trace the kernel stack of a 2015-09-11 03:54:37 +00:00
stdarg.h Add a va_copy() to our fall-back stdarg implementation for use with lint(1) 2013-10-07 10:01:23 +00:00
sysarch.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
trap.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
ucontext.h POSIX states that #include <signal.h> shall make both mcontext_t and 2016-02-12 07:38:19 +00:00
vdso.h hyperv: Implement userspace gettimeofday(2) with Hyper-V reference TSC 2016-12-19 07:40:45 +00:00
vmware.h Detect whether x2APIC on VMWare is usable without interrupt 2015-02-14 09:00:12 +00:00
x86_smp.h x86: make the arrays that depend on MAX_APIC_ID dynamic 2017-08-10 09:16:03 +00:00
x86_var.h apic_enumerator: only set mp_ncpus and mp_maxid at probe cpus phase 2017-08-10 09:15:18 +00:00