|  | config X86 | 
|  | select 64BIT | 
|  | def_bool y | 
|  |  | 
|  | config X86_64 | 
|  | def_bool 64BIT | 
|  |  | 
|  | menu "x86 Options" | 
|  |  | 
|  | config PCI_VERBOSE | 
|  | bool "Verbose PCI Output" | 
|  | default n | 
|  | help | 
|  | Will print out extra information related to PCI. | 
|  |  | 
|  | config NOFASTCALL_FSBASE | 
|  | depends on X86_64 | 
|  | bool "Disable fastcall to set FS base" | 
|  | default n | 
|  | help | 
|  | Disable the fast path syscall to set FS base.  If your hardware | 
|  | allows setting FS base from userspace, you can say y to disable the | 
|  | fastcall for a slight improvement for all syscalls.  If unsure, say | 
|  | n. | 
|  |  | 
|  | endmenu | 
|  |  | 
|  | menu "x86 Hacks" | 
|  |  | 
|  | config LOUSY_LAPIC_TIMER | 
|  | bool "Lousy Local APIC Timer" | 
|  | default n | 
|  | help | 
|  | This turns our one-shot APIC timer into a periodic timer.  If your | 
|  | system seems to lock up until you hit the keyboard, say 'Y' here and | 
|  | report the results. | 
|  |  | 
|  | Qemu without KVM had issues firing a one-shot LAPIC timer (the timer | 
|  | IRQ would only go off when some other IRQ fired), but it worked with | 
|  | a periodic tick.  Since we aggressively disarm the timer, this config | 
|  | shouldn't be a performance hit. | 
|  |  | 
|  | config NOMTRRS | 
|  | bool "Disable MTRRs" | 
|  | default y | 
|  | help | 
|  | Old debug option from when we were having issues with MTRRs.  If your | 
|  | machine won't boot, try turning this on. | 
|  |  | 
|  | config KB_CORE0_ONLY | 
|  | bool "Keyboard from core0 only" | 
|  | default n | 
|  | help | 
|  | Say 'n' unless you are using a buggy x86 machine that can't handle | 
|  | polling the keyboard PIO from cores other than core 0. | 
|  |  | 
|  | config X86_DISABLE_KEYBOARD | 
|  | bool "Disable Keyboard" | 
|  | default n | 
|  | help | 
|  | x86 machines with a legacy USB keyboard often implement the USB stack | 
|  | in SMM mode.  When doing anything with the keyboard, including | 
|  | polling the keyboard from the kernel monitor, SMM mode can | 
|  | dramatically interfere with other cores (like a 10-15x performance | 
|  | impact on some benchmarks). | 
|  |  | 
|  | Say 'y' if you have such a machine and do not need the keyboard. | 
|  |  | 
|  | config ENABLE_LEGACY_USB | 
|  | bool "Enable Legacy USB" | 
|  | default n | 
|  | help | 
|  | Say 'y' if you want to use a USB keyboard.  Given that we do not have | 
|  | a USB stack, disabling legacy USB means USB keyboards will not work. | 
|  | We disable legacy USB by default, since our primary console | 
|  | communication is serial, and legacy USB support results in SMM | 
|  | interference that affects all cores. | 
|  |  | 
|  | endmenu |