diff options
Diffstat (limited to 'arch/x86_64/Kconfig')
| -rw-r--r-- | arch/x86_64/Kconfig | 61 |
1 files changed, 43 insertions, 18 deletions
diff --git a/arch/x86_64/Kconfig b/arch/x86_64/Kconfig index e9b4f058a49a..145bb824b2a8 100644 --- a/arch/x86_64/Kconfig +++ b/arch/x86_64/Kconfig | |||
| @@ -415,13 +415,13 @@ config OUT_OF_LINE_PFN_TO_PAGE | |||
| 415 | depends on DISCONTIGMEM | 415 | depends on DISCONTIGMEM |
| 416 | 416 | ||
| 417 | config NR_CPUS | 417 | config NR_CPUS |
| 418 | int "Maximum number of CPUs (2-256)" | 418 | int "Maximum number of CPUs (2-255)" |
| 419 | range 2 255 | 419 | range 2 255 |
| 420 | depends on SMP | 420 | depends on SMP |
| 421 | default "8" | 421 | default "8" |
| 422 | help | 422 | help |
| 423 | This allows you to specify the maximum number of CPUs which this | 423 | This allows you to specify the maximum number of CPUs which this |
| 424 | kernel will support. Current maximum is 256 CPUs due to | 424 | kernel will support. Current maximum is 255 CPUs due to |
| 425 | APIC addressing limits. Less depending on the hardware. | 425 | APIC addressing limits. Less depending on the hardware. |
| 426 | 426 | ||
| 427 | This is purely to save memory - each supported CPU requires | 427 | This is purely to save memory - each supported CPU requires |
| @@ -565,23 +565,56 @@ config CRASH_DUMP | |||
| 565 | PHYSICAL_START. | 565 | PHYSICAL_START. |
| 566 | For more details see Documentation/kdump/kdump.txt | 566 | For more details see Documentation/kdump/kdump.txt |
| 567 | 567 | ||
| 568 | config RELOCATABLE | ||
| 569 | bool "Build a relocatable kernel(EXPERIMENTAL)" | ||
| 570 | depends on EXPERIMENTAL | ||
| 571 | help | ||
| 572 | Builds a relocatable kernel. This enables loading and running | ||
| 573 | a kernel binary from a different physical address than it has | ||
| 574 | been compiled for. | ||
| 575 | |||
| 576 | One use is for the kexec on panic case where the recovery kernel | ||
| 577 | must live at a different physical address than the primary | ||
| 578 | kernel. | ||
| 579 | |||
| 580 | Note: If CONFIG_RELOCATABLE=y, then kernel run from the address | ||
| 581 | it has been loaded at and compile time physical address | ||
| 582 | (CONFIG_PHYSICAL_START) is ignored. | ||
| 583 | |||
| 568 | config PHYSICAL_START | 584 | config PHYSICAL_START |
| 569 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) | 585 | hex "Physical address where the kernel is loaded" if (EMBEDDED || CRASH_DUMP) |
| 570 | default "0x1000000" if CRASH_DUMP | ||
| 571 | default "0x200000" | 586 | default "0x200000" |
| 572 | help | 587 | help |
| 573 | This gives the physical address where the kernel is loaded. Normally | 588 | This gives the physical address where the kernel is loaded. It |
| 574 | for regular kernels this value is 0x200000 (2MB). But in the case | 589 | should be aligned to 2MB boundary. |
| 575 | of kexec on panic the fail safe kernel needs to run at a different | 590 | |
| 576 | address than the panic-ed kernel. This option is used to set the load | 591 | If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then |
| 577 | address for kernels used to capture crash dump on being kexec'ed | 592 | bzImage will decompress itself to above physical address and |
| 578 | after panic. The default value for crash dump kernels is | 593 | run from there. Otherwise, bzImage will run from the address where |
| 579 | 0x1000000 (16MB). This can also be set based on the "X" value as | 594 | it has been loaded by the boot loader and will ignore above physical |
| 595 | address. | ||
| 596 | |||
| 597 | In normal kdump cases one does not have to set/change this option | ||
| 598 | as now bzImage can be compiled as a completely relocatable image | ||
| 599 | (CONFIG_RELOCATABLE=y) and be used to load and run from a different | ||
| 600 | address. This option is mainly useful for the folks who don't want | ||
| 601 | to use a bzImage for capturing the crash dump and want to use a | ||
| 602 | vmlinux instead. | ||
| 603 | |||
| 604 | So if you are using bzImage for capturing the crash dump, leave | ||
| 605 | the value here unchanged to 0x200000 and set CONFIG_RELOCATABLE=y. | ||
| 606 | Otherwise if you plan to use vmlinux for capturing the crash dump | ||
| 607 | change this value to start of the reserved region (Typically 16MB | ||
| 608 | 0x1000000). In other words, it can be set based on the "X" value as | ||
| 580 | specified in the "crashkernel=YM@XM" command line boot parameter | 609 | specified in the "crashkernel=YM@XM" command line boot parameter |
| 581 | passed to the panic-ed kernel. Typically this parameter is set as | 610 | passed to the panic-ed kernel. Typically this parameter is set as |
| 582 | crashkernel=64M@16M. Please take a look at | 611 | crashkernel=64M@16M. Please take a look at |
| 583 | Documentation/kdump/kdump.txt for more details about crash dumps. | 612 | Documentation/kdump/kdump.txt for more details about crash dumps. |
| 584 | 613 | ||
| 614 | Usage of bzImage for capturing the crash dump is advantageous as | ||
| 615 | one does not have to build two kernels. Same kernel can be used | ||
| 616 | as production kernel and capture kernel. | ||
| 617 | |||
| 585 | Don't change this unless you know what you are doing. | 618 | Don't change this unless you know what you are doing. |
| 586 | 619 | ||
| 587 | config SECCOMP | 620 | config SECCOMP |
| @@ -627,14 +660,6 @@ config CC_STACKPROTECTOR_ALL | |||
| 627 | 660 | ||
| 628 | source kernel/Kconfig.hz | 661 | source kernel/Kconfig.hz |
| 629 | 662 | ||
| 630 | config REORDER | ||
| 631 | bool "Function reordering" | ||
| 632 | default n | ||
| 633 | help | ||
| 634 | This option enables the toolchain to reorder functions for a more | ||
| 635 | optimal TLB usage. If you have pretty much any version of binutils, | ||
| 636 | this can increase your kernel build time by roughly one minute. | ||
| 637 | |||
| 638 | config K8_NB | 663 | config K8_NB |
| 639 | def_bool y | 664 | def_bool y |
| 640 | depends on AGP_AMD64 || IOMMU || (PCI && NUMA) | 665 | depends on AGP_AMD64 || IOMMU || (PCI && NUMA) |
