Lines Matching +full:smp +full:- +full:capable
1 # SPDX-License-Identifier: GPL-2.0
4 bool "64-bit kernel" if "$(ARCH)" = "x86"
7 Say yes to build a 64-bit kernel - formerly known as x86_64
8 Say no to build a 32-bit kernel - formerly known as i386
13 # Options that are inherently 32-bit kernel only:
26 # Options that are inherently 64-bit kernel only:
56 # ported to 32-bit as well. )
158 # Word-size accesses may read uninitialized data past the trailing \0
174 select GENERIC_IRQ_EFFECTIVE_AFF_MASK if SMP
176 select GENERIC_IRQ_MIGRATION if SMP
180 select GENERIC_PENDING_IRQ if SMP
303 select HOTPLUG_PARALLEL if SMP && X86_64
304 select HOTPLUG_SMT if SMP
305 select HOTPLUG_SPLIT_STARTUP if SMP && X86_32
331 select ARCH_SUPPORTS_SCHED_SMT if SMP
332 select SCHED_SMT if SMP
333 select ARCH_SUPPORTS_SCHED_CLUSTER if SMP
334 select ARCH_SUPPORTS_SCHED_MC if SMP
342 default "elf32-i386" if X86_32
343 default "elf64-x86-64" if X86_64
432 config SMP config
433 bool "Symmetric multi-processing support"
439 If you say N here, the kernel will run on uni- and multiprocessor
454 See also <file:Documentation/arch/x86/i386/IO-APIC.rst>,
455 <file:Documentation/admin-guide/lockup-watchdogs.rst> and the SMP-HOWTO available at
491 APIC accesses and support for managing guest owned APIC state for SEV-SNP
498 bool "Enable MSI and MSI-x delivery by posted interrupts"
513 For old smp systems that do not have proper acpi support. Newer systems
549 bool "Support for extended (non-PC) x86 platforms"
557 for the following non-PC x86 platforms, depending on the value of
560 32-bit platforms (CONFIG_64BIT=n):
564 RDC R-321x SoC
566 64-bit platforms (CONFIG_64BIT=y):
574 generic distribution kernel, say Y here - otherwise say N.
583 depends on SMP
587 Adds support for Numascale NumaChip large-SMP systems. Needed to
597 depends on SMP
600 supposed to run on these EM64T-based machines. Only choose this option
627 Select to build a kernel capable of supporting 64-bit Intel MID
636 If you are building for a PC class system or non-MID tablet
686 bool "RDC R-321x SoC"
692 This option is needed for RDC R-321x system-on-chip, also known
693 as R-8610-(G).
730 - BayTrail
731 - Braswell
732 - Quark
753 # On 32-bit this adds too big of NODES_SHIFT and we run out of page flags:
754 # On 32-bit SPARSEMEM adds too big of SECTIONS_WIDTH:
773 prompt "Single-depth WCHAN output"
786 Say Y here to enable options for running Linux under various hyper-
809 bool "paravirt-ops debugging"
817 depends on PARAVIRT && SMP
820 spinlock implementation with something virtualization-friendly
874 bool "Jailhouse non-root cell support"
878 This option allows to run Linux as guest in a Jailhouse non-root
888 a flexible, lightweight reference open-source hypervisor, built with
889 real-time and safety-criticality in mind. It is built for embedded
890 IOT with small footprint and real-time features. More details can be
903 bool "Intel TDX (Trust Domain Extensions) - Guest Support"
928 Use the IA-PC HPET (High Precision Event Timer) to manage
932 The HPET provides a stable time base on SMP
934 as it is off-chip. The interface used is documented
968 The GART supports full DMA access for devices with 32-bit access
977 32-bit limited device.
988 bool "Enable Maximum number of SMP Processors and NUMA Nodes"
989 depends on X86_64 && SMP && DEBUG_KERNEL
1002 # The ranges are different on 32-bit and 64-bit kernels, depending on
1012 default 1 if !SMP
1018 default 8 if SMP
1019 default 1 if !SMP
1024 default 8192 if SMP && CPUMASK_OFFSTACK
1025 default 512 if SMP && !CPUMASK_OFFSTACK
1026 default 1 if !SMP
1031 default 8 if SMP
1032 default 1 if !SMP
1038 default 64 if SMP
1039 default 1 if !SMP
1042 int "Maximum number of CPUs" if SMP && !MAXSMP
1078 depends on !SMP && X86_LOCAL_APIC
1083 depends on X86_32 && !SMP
1086 integrated interrupt controller in the CPU. If you have a single-CPU
1090 all. The local APIC supports CPU-generated self-interrupts (timer,
1095 bool "IO-APIC support on uniprocessors"
1098 An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an
1099 SMP-capable replacement for PC-style interrupt controllers. Most
1100 SMP systems and many recent uniprocessor systems have one.
1102 If you have a single-CPU system with an IO-APIC, you can say Y here
1104 an IO-APIC, then the kernel will still run with no slowdown at all.
1108 depends on X86_64 || SMP || X86_UP_APIC || PCI_MSI
1115 depends on SMP
1132 entry in the chipset's IO-APIC is masked (as, e.g. the RT
1206 mode, which is an 80286-era approximation of 16-bit real mode.
1214 a 16-bit DOS program where 16-bit performance matters, vm86
1218 Note that any app that works on a 64-bit kernel is unlikely to
1219 need this option, as 64-bit kernels don't, and can't, support
1220 V8086 mode. This option is also unrelated to 16-bit protected
1221 mode and is not needed to run most 16-bit programs under Wine.
1233 bool "Enable support for 16-bit segments" if EXPERT
1237 This option is required by programs like Wine to run 16-bit
1240 plus 16K runtime memory on x86-64,
1313 CS5530A and CS5536 chipsets and the RDC R-321x SoC.
1331 depends on MICROCODE && SMP
1373 tristate "/dev/cpu/*/msr - Model-specific register support"
1376 Model-Specific Registers (MSRs). It is a character device with
1378 MSR accesses are directed to a specific CPU on multi-processor
1382 tristate "/dev/cpu/*/cpuid - CPU information support"
1394 However, the address space of 32-bit x86 processors is only 4
1427 will also likely make your kernel incompatible with binary-only
1465 larger swapspace support for non-overcommit purposes. It
1510 depends on SMP
1515 Enable NUMA (Non-Uniform Memory Access) support.
1521 For 64-bit this is recommended if the system is Intel Core i7
1577 See Documentation/admin-guide/mm/memory-hotplug.rst for more information.
1593 tristate "Support non-standard NVDIMMs and ADR protected memory"
1600 Treat memory marked using the non-standard e820 type of 12 as used
1601 by the Intel Sandy Bridge-EP reference BIOS as protected memory.
1617 Documentation/admin-guide/kernel-parameters.rst to adjust this.
1625 BIOS-originated corruption always affects the same memory,
1659 emulation can be found in <file:arch/x86/math-emu/README>.
1671 a video (VGA) card on a PCI or AGP bus. Enabling write-combining
1685 The AMD K6-2 (stepping 8 and above) and K6-3 processors have two
1687 write-combining. All of these processors are supported by this code
1690 Saying Y here also fixes a problem with buggy SMP BIOSes which only
1714 int "MTRR cleanup enable value (0-1)"
1722 int "MTRR cleanup spare reg num (0-7)"
1742 spontaneous reboots) or a non-working video driver.
1758 specific cases in protected and virtual-8086 modes. Emulated
1764 …def_bool ((CC_IS_GCC && $(cc-option, -fcf-protection=branch -mindirect-branch-register)) || CC_IS_…
1765 $(as-instr,endbr64)
1780 hardware support course-grain forward-edge Control Flow Integrity
1795 # Note: only available in 64-bit mode
1801 page-based protections, but without requiring modification of the
1804 For details, see Documentation/core-api/protection-keys.rst
1832 and =auto. See Documentation/admin-guide/kernel-parameters.txt for more
1842 TSX is disabled if possible - equals to tsx=off command line parameter.
1847 TSX is always enabled on TSX capable HW - equals the tsx=on command
1853 TSX is enabled on TSX capable HW that is believed to be safe against
1854 side channel attacks- equals the tsx=auto command line parameter.
1924 resultant kernel should continue to boot on existing non-EFI
1935 See Documentation/admin-guide/efi-stub.rst for more information.
1955 bool "EFI mixed-mode support"
1958 Enabling this feature allows a 64-bit kernel to be booted
1959 on a 32-bit firmware, provided that your CPU supports 64-bit
1962 Note that it is not possible to boot a mixed-mode enabled
1963 kernel via the EFI boot stub - a bootloader that supports
1972 Export EFI runtime memory regions to /sys/firmware/efi/runtime-map.
1976 See also Documentation/ABI/testing/sysfs-firmware-efi-runtime-map.
2048 command line boot parameter passed to the panic-ed
2049 kernel. Please take a look at Documentation/admin-guide/kdump/kdump.rst
2091 On 64-bit, the kernel physical and virtual addresses are
2098 On 32-bit, the kernel physical and virtual addresses are
2130 If bootloader loads the kernel at a non-aligned address and
2134 If bootloader loads the kernel at a non-aligned address and
2142 On 32-bit this value must be a multiple of 0x2000. On 64-bit
2185 to 64-bit linear addresses, allowing software to use of the
2193 depends on SMP
2201 presented with a 32-bit vDSO that is not mapped at the address
2211 dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dso' failed!
2214 option from 1 to 0, which turns off the 32-bit vDSO entirely.
2249 certain uses of the vsyscall area as an ASLR-bypassing
2264 bool "Built-in kernel command line"
2276 Systems with fully functional boot loaders (i.e. non-embedded)
2280 string "Built-in kernel command string"
2292 In most cases, the command line (whether built-in or provided
2297 bool "Built-in command line overrides boot loader arguments"
2301 command line, and use ONLY the built-in command line.
2310 Linux can allow user programs to install a per-process x86
2312 call. This is required to run 16-bit or segmented code such as
2317 context switches and increases the low-level kernel attack
2361 def_bool $(success,echo 'int __seg_fs fs; int __seg_gs gs;' | $(CC) -x c - -S -o /dev/null)
2365 # -fsanitize=kernel-address (KASAN) and -fsanitize=thread (KCSAN)
2380 def_bool $(cc-option,-mharden-sls=all)
2383 def_bool $(cc-option,-mfunction-return=thunk-extern)
2386 def_bool $(cc-option,-fpatchable-function-entry=16,16)
2389 def_bool $(cc-option,-fsanitize=kcfi -fsanitize-kcfi-arity)
2400 # Basically: FUNCTION_ALIGNMENT - 5*CFI
2466 kernel-to-user data leaks by avoiding speculative indirect
2467 branches. Requires a compiler with -mindirect-branch=thunk-extern
2471 bool "Enable return-thunks"
2476 Compile the kernel with the return-thunks compiler option to guard
2477 against kernel-to-user data leaks by avoiding return speculation.
2478 Requires a compiler with -mfunction-return=thunk-extern
2496 SKL Return-Stack-Buffer (RSB) underflow issue. The mitigation is off
2498 retbleed=stuff option. For non-affected systems the overhead of this
2499 option is marginal as the call depth tracking is using run-time
2514 kernel command line with 'debug-callthunks'.
2524 spec_rstack_overflow={ibpb,ibpb-vmexit} mitigations.
2540 Enable the SRSO mitigation needed on AMD Zen1-4 machines.
2543 bool "Mitigate Straight-Line-Speculation"
2548 Compile the kernel with straight-line-speculation options to guard
2571 See also <file:Documentation/admin-guide/hw-vuln/reg-file-data-sampling.rst>
2574 bool "Mitigate Spectre-BHB (Branch History Injection)"
2581 See <file:Documentation/admin-guide/hw-vuln/spectre.rst>
2591 See also <file:Documentation/admin-guide/hw-vuln/mds.rst>
2602 See also <file:Documentation/admin-guide/hw-vuln/tsx_async_abort.rst>
2610 Stale Data Vulnerabilities are a class of memory-mapped I/O (MMIO)
2614 <file:Documentation/admin-guide/hw-vuln/processor_mmio_stale_data.rst>
2624 See <file:Documentation/admin-guide/hw-vuln/l1tf.rst
2647 See also <file:Documentation/admin-guide/hw-vuln/spectre.rst>
2659 See also <file:Documentation/admin-guide/hw-vuln/spectre.rst>
2673 <file:Documentation/admin-guide/hw-vuln/special-register-buffer-data-sampling.rst>
2694 See <file:Documentation/admin-guide/hw-vuln/indirect-target-selection.rst>
2742 battery status information, and user-space programs will receive
2752 and more information, read <file:Documentation/power/apm-acpi.rst>
2753 and the Battery Powered Linux mini-HOWTO, available from
2758 VESA-compliant "green" monitors.
2810 feature is turned off -- see "Do CPU IDLE calls", below). This
2839 do with your VESA-compliant power-saving monitor. Further, this
2840 option doesn't work for all laptops -- it might not turn off your
2850 needs to. Unfortunately, some BIOSes do not -- especially those in
2874 PCI-based systems don't have any BIOS at all. Linux can also try to
2895 bool "OLPC XO-1"
2907 # x86-64 doesn't support PCI BIOS access from long mode so always go direct.
2956 lspci -nn | grep '1166:0009'
2970 architectures -- if your target machine is modern, it probably does
2975 # x86_64 have no ISA slots, but can have ISA-style DMA.
2977 bool "ISA-style DMA support" if (X86_64 && EXPERT)
2980 Enables ISA-style DMA support for devices requiring such controllers.
2999 PCI-IDs of several on-chip devices, so its a good dependency
3005 tristate "NatSemi SCx200 27MHz High-Resolution Timer Support"
3009 This driver provides a clocksource built upon the on-chip
3010 27MHz high-resolution timer. Its also a workaround for
3011 NSC Geode SC-1100's buggy TSC, which loses time when the
3028 bool "OLPC XO-1 Power Management"
3031 Add support for poweroff and suspend of the OLPC XO-1 laptop.
3034 bool "OLPC XO-1 Real Time Clock"
3037 Add support for the XO-1 real time clock, which can be used as a
3041 bool "OLPC XO-1 SCI extras"
3046 Add support for SCI-based features of the OLPC XO-1 laptop:
3047 - EC-driven system wakeups
3048 - Power button
3049 - Ebook switch
3050 - Lid switch
3051 - AC adapter status updates
3052 - Battery status updates
3055 bool "OLPC XO-1.5 SCI extras"
3059 Add support for SCI-based features of the OLPC XO-1.5 laptop:
3060 - EC-driven system wakeups
3061 - AC adapter status updates
3062 - Battery status updates
3098 bool "Technologic Systems TS-5500 platform support"
3104 This option enables system support for the Technologic Systems TS-5500.
3127 Include code to run legacy 32-bit programs under a
3128 64-bit kernel. You should likely turn this on, unless you're
3129 100% sure that you don't have any 32-bit programs left.
3136 Make IA32 emulation disabled by default. This prevents loading 32-bit
3137 processes and access to 32-bit syscalls. If unsure, leave it to its
3141 bool "x32 ABI for 64-bit mode"
3143 # llvm-objcopy does not convert x86_64 .note.gnu.property or
3147 depends on $(success,$(OBJCOPY) --version | head -n1 | grep -qv llvm)
3149 Include code to run binaries for the x32 native 32-bit ABI
3150 for 64-bit processors. An x32 process gets access to the
3151 full 64-bit register file and wide data path while leaving