| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | menu "Kernel hacking" | 
|  | 2 |  | 
| Ingo Molnar | 55f327f | 2006-07-03 00:24:43 -0700 | [diff] [blame] | 3 | config TRACE_IRQFLAGS_SUPPORT | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 4 | def_bool y | 
| Ingo Molnar | 55f327f | 2006-07-03 00:24:43 -0700 | [diff] [blame] | 5 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 6 | source "lib/Kconfig.debug" | 
|  | 7 |  | 
| Ingo Molnar | d092633 | 2008-07-18 00:26:59 +0200 | [diff] [blame] | 8 | config STRICT_DEVMEM | 
| Stefan Richter | 16104b5 | 2008-06-05 22:47:13 +0200 | [diff] [blame] | 9 | bool "Filter access to /dev/mem" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 10 | ---help--- | 
| Linus Torvalds | f2d0f1d | 2008-07-21 13:04:08 -0700 | [diff] [blame] | 11 | If this option is disabled, you allow userspace (root) access to all | 
| Stefan Richter | 16104b5 | 2008-06-05 22:47:13 +0200 | [diff] [blame] | 12 | of memory, including kernel and userspace memory. Accidental | 
|  | 13 | access to this is obviously disastrous, but specific access can | 
| Ingo Molnar | d092633 | 2008-07-18 00:26:59 +0200 | [diff] [blame] | 14 | be used by people debugging the kernel. Note that with PAT support | 
|  | 15 | enabled, even in this case there are restrictions on /dev/mem | 
|  | 16 | use due to the cache aliasing requirements. | 
| Stefan Richter | 16104b5 | 2008-06-05 22:47:13 +0200 | [diff] [blame] | 17 |  | 
|  | 18 | If this option is switched on, the /dev/mem file only allows | 
|  | 19 | userspace access to PCI space and the BIOS code and data regions. | 
|  | 20 | This is sufficient for dosemu and X and all common users of | 
|  | 21 | /dev/mem. | 
|  | 22 |  | 
|  | 23 | If in doubt, say Y. | 
| Arjan van de Ven | ae531c2 | 2008-04-24 23:40:47 +0200 | [diff] [blame] | 24 |  | 
| Ben Collins | 6bcb13b | 2008-06-18 14:04:35 -0400 | [diff] [blame] | 25 | config X86_VERBOSE_BOOTUP | 
|  | 26 | bool "Enable verbose x86 bootup info messages" | 
|  | 27 | default y | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 28 | ---help--- | 
| Ben Collins | 6bcb13b | 2008-06-18 14:04:35 -0400 | [diff] [blame] | 29 | Enables the informational output from the decompression stage | 
|  | 30 | (e.g. bzImage) of the boot. If you disable this you will still | 
|  | 31 | see errors. Disable this if you want silent bootup. | 
|  | 32 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 33 | config EARLY_PRINTK | 
| Ingo Molnar | 076f977 | 2008-01-30 13:33:06 +0100 | [diff] [blame] | 34 | bool "Early printk" if EMBEDDED | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 35 | default y | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 36 | ---help--- | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 37 | Write kernel log output directly into the VGA buffer or to a serial | 
|  | 38 | port. | 
|  | 39 |  | 
|  | 40 | This is useful for kernel debugging when your machine crashes very | 
|  | 41 | early before the console code is initialized. For normal operation | 
|  | 42 | it is not recommended because it looks ugly and doesn't cooperate | 
|  | 43 | with klogd/syslogd or the X server. You should normally N here, | 
|  | 44 | unless you want to debug such a crash. | 
|  | 45 |  | 
| Feng Tang | c20b5c3 | 2010-09-13 15:08:55 +0800 | [diff] [blame] | 46 | config EARLY_PRINTK_MRST | 
|  | 47 | bool "Early printk for MRST platform support" | 
|  | 48 | depends on EARLY_PRINTK && X86_MRST | 
|  | 49 |  | 
| Yinghai Lu | 5c05917 | 2008-07-24 17:29:40 -0700 | [diff] [blame] | 50 | config EARLY_PRINTK_DBGP | 
|  | 51 | bool "Early printk via EHCI debug port" | 
| Ingo Molnar | 9749986 | 2008-07-26 17:28:11 +0200 | [diff] [blame] | 52 | depends on EARLY_PRINTK && PCI | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 53 | ---help--- | 
| Yinghai Lu | 5c05917 | 2008-07-24 17:29:40 -0700 | [diff] [blame] | 54 | Write kernel log output directly into the EHCI debug port. | 
|  | 55 |  | 
|  | 56 | This is useful for kernel debugging when your machine crashes very | 
|  | 57 | early before the console code is initialized. For normal operation | 
|  | 58 | it is not recommended because it looks ugly and doesn't cooperate | 
|  | 59 | with klogd/syslogd or the X server. You should normally N here, | 
|  | 60 | unless you want to debug such a crash. You need usb debug device. | 
|  | 61 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 62 | config DEBUG_STACKOVERFLOW | 
|  | 63 | bool "Check for stack overflows" | 
|  | 64 | depends on DEBUG_KERNEL | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 65 | ---help--- | 
| Adrian Bunk | dab175f | 2005-07-27 11:44:23 -0700 | [diff] [blame] | 66 | This option will cause messages to be printed if free stack space | 
|  | 67 | drops below a certain limit. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 68 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 69 | config DEBUG_STACK_USAGE | 
|  | 70 | bool "Stack utilization instrumentation" | 
|  | 71 | depends on DEBUG_KERNEL | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 72 | ---help--- | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 73 | Enables the display of the minimum amount of free stack which each | 
|  | 74 | task has ever had available in the sysrq-T and sysrq-P debug output. | 
|  | 75 |  | 
|  | 76 | This option will slow down process creation somewhat. | 
|  | 77 |  | 
| travis@sgi.com | c49a495 | 2008-01-30 13:33:22 +0100 | [diff] [blame] | 78 | config DEBUG_PER_CPU_MAPS | 
|  | 79 | bool "Debug access to per_cpu maps" | 
|  | 80 | depends on DEBUG_KERNEL | 
| Ingo Molnar | 3e5095d | 2009-01-27 17:07:08 +0100 | [diff] [blame] | 81 | depends on SMP | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 82 | ---help--- | 
| travis@sgi.com | c49a495 | 2008-01-30 13:33:22 +0100 | [diff] [blame] | 83 | Say Y to verify that the per_cpu map being accessed has | 
|  | 84 | been setup.  Adds a fair amount of code to kernel memory | 
|  | 85 | and decreases performance. | 
|  | 86 |  | 
|  | 87 | Say N if unsure. | 
|  | 88 |  | 
| Arjan van de Ven | 926e539 | 2008-04-17 17:40:45 +0200 | [diff] [blame] | 89 | config X86_PTDUMP | 
|  | 90 | bool "Export kernel pagetable layout to userspace via debugfs" | 
| H. Peter Anvin | fe770bf | 2008-04-17 17:40:45 +0200 | [diff] [blame] | 91 | depends on DEBUG_KERNEL | 
| Arjan van de Ven | 926e539 | 2008-04-17 17:40:45 +0200 | [diff] [blame] | 92 | select DEBUG_FS | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 93 | ---help--- | 
| Arjan van de Ven | 926e539 | 2008-04-17 17:40:45 +0200 | [diff] [blame] | 94 | Say Y here if you want to show the kernel pagetable layout in a | 
|  | 95 | debugfs file. This information is only useful for kernel developers | 
|  | 96 | who are working in architecture specific areas of the kernel. | 
|  | 97 | It is probably not a good idea to enable this feature in a production | 
|  | 98 | kernel. | 
|  | 99 | If in doubt, say "N" | 
|  | 100 |  | 
| Arjan van de Ven | 63aaf30 | 2006-01-06 00:12:02 -0800 | [diff] [blame] | 101 | config DEBUG_RODATA | 
|  | 102 | bool "Write protect kernel read-only data structures" | 
| Ingo Molnar | 11201e6 | 2008-01-30 13:33:32 +0100 | [diff] [blame] | 103 | default y | 
| Arjan van de Ven | 63aaf30 | 2006-01-06 00:12:02 -0800 | [diff] [blame] | 104 | depends on DEBUG_KERNEL | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 105 | ---help--- | 
| Arjan van de Ven | 63aaf30 | 2006-01-06 00:12:02 -0800 | [diff] [blame] | 106 | Mark the kernel read-only data as write-protected in the pagetables, | 
|  | 107 | in order to catch accidental (and incorrect) writes to such const | 
| Ingo Molnar | 11201e6 | 2008-01-30 13:33:32 +0100 | [diff] [blame] | 108 | data. This is recommended so that we can catch kernel bugs sooner. | 
|  | 109 | If in doubt, say "Y". | 
| Arjan van de Ven | 63aaf30 | 2006-01-06 00:12:02 -0800 | [diff] [blame] | 110 |  | 
| Ingo Molnar | aba8391 | 2008-01-30 13:34:09 +0100 | [diff] [blame] | 111 | config DEBUG_RODATA_TEST | 
|  | 112 | bool "Testcase for the DEBUG_RODATA feature" | 
|  | 113 | depends on DEBUG_RODATA | 
| Ingo Molnar | 72370f2 | 2008-02-13 16:15:34 +0100 | [diff] [blame] | 114 | default y | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 115 | ---help--- | 
| Ingo Molnar | aba8391 | 2008-01-30 13:34:09 +0100 | [diff] [blame] | 116 | This option enables a testcase for the DEBUG_RODATA | 
|  | 117 | feature as well as for the change_page_attr() infrastructure. | 
|  | 118 | If in doubt, say "N" | 
|  | 119 |  | 
| matthieu castet | 84e1c6b | 2010-11-16 22:35:16 +0100 | [diff] [blame] | 120 | config DEBUG_SET_MODULE_RONX | 
|  | 121 | bool "Set loadable kernel module data as NX and text as RO" | 
|  | 122 | depends on MODULES | 
|  | 123 | ---help--- | 
|  | 124 | This option helps catch unintended modifications to loadable | 
|  | 125 | kernel module's text and read-only data. It also prevents execution | 
|  | 126 | of module data. Such protection may interfere with run-time code | 
|  | 127 | patching and dynamic kernel tracing - and they might also protect | 
|  | 128 | against certain classes of kernel exploits. | 
|  | 129 | If in doubt, say "N". | 
|  | 130 |  | 
| Ingo Molnar | aba8391 | 2008-01-30 13:34:09 +0100 | [diff] [blame] | 131 | config DEBUG_NX_TEST | 
|  | 132 | tristate "Testcase for the NX non-executable stack feature" | 
|  | 133 | depends on DEBUG_KERNEL && m | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 134 | ---help--- | 
| Ingo Molnar | aba8391 | 2008-01-30 13:34:09 +0100 | [diff] [blame] | 135 | This option enables a testcase for the CPU NX capability | 
|  | 136 | and the software setup of this feature. | 
|  | 137 | If in doubt, say "N" | 
|  | 138 |  | 
| Andi Kleen | 102e41f | 2006-04-18 12:35:22 +0200 | [diff] [blame] | 139 | config DOUBLEFAULT | 
|  | 140 | default y | 
|  | 141 | bool "Enable doublefault exception handler" if EMBEDDED | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 142 | depends on X86_32 | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 143 | ---help--- | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 144 | This option allows trapping of rare doublefault exceptions that | 
|  | 145 | would otherwise cause a system to silently reboot. Disabling this | 
|  | 146 | option saves about 4k and might cause you much additional grey | 
|  | 147 | hair. | 
|  | 148 |  | 
|  | 149 | config IOMMU_DEBUG | 
|  | 150 | bool "Enable IOMMU debugging" | 
| Joerg Roedel | 966396d | 2007-10-24 12:49:48 +0200 | [diff] [blame] | 151 | depends on GART_IOMMU && DEBUG_KERNEL | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 152 | depends on X86_64 | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 153 | ---help--- | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 154 | Force the IOMMU to on even when you have less than 4GB of | 
|  | 155 | memory and add debugging code. On overflow always panic. And | 
|  | 156 | allow to enable IOMMU leak tracing. Can be disabled at boot | 
|  | 157 | time with iommu=noforce. This will also enable scatter gather | 
|  | 158 | list merging.  Currently not recommended for production | 
|  | 159 | code. When you use it make sure you have a big enough | 
|  | 160 | IOMMU/AGP aperture.  Most of the options enabled by this can | 
|  | 161 | be set more finegrained using the iommu= command line | 
|  | 162 | options. See Documentation/x86_64/boot-options.txt for more | 
|  | 163 | details. | 
|  | 164 |  | 
| Joerg Roedel | 2be69c7 | 2009-05-22 12:15:49 +0200 | [diff] [blame] | 165 | config IOMMU_STRESS | 
|  | 166 | bool "Enable IOMMU stress-test mode" | 
|  | 167 | ---help--- | 
|  | 168 | This option disables various optimizations in IOMMU related | 
|  | 169 | code to do real stress testing of the IOMMU code. This option | 
|  | 170 | will cause a performance drop and should only be enabled for | 
|  | 171 | testing. | 
|  | 172 |  | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 173 | config IOMMU_LEAK | 
|  | 174 | bool "IOMMU leak tracing" | 
| FUJITA Tomonori | 19c1a6f | 2009-04-14 09:43:19 +0900 | [diff] [blame] | 175 | depends on IOMMU_DEBUG && DMA_API_DEBUG | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 176 | ---help--- | 
| Randy Dunlap | d013a27 | 2007-10-24 15:50:43 -0700 | [diff] [blame] | 177 | Add a simple leak tracer to the IOMMU code. This is useful when you | 
|  | 178 | are debugging a buggy device driver that leaks IOMMU mappings. | 
|  | 179 |  | 
| Pekka Paalanen | 6bc5c36 | 2009-01-03 21:23:51 +0200 | [diff] [blame] | 180 | config HAVE_MMIOTRACE_SUPPORT | 
|  | 181 | def_bool y | 
| Pekka Paalanen | 8b7d89d | 2008-05-12 21:20:56 +0200 | [diff] [blame] | 182 |  | 
| Masami Hiramatsu | ca0e9ba | 2009-08-13 16:34:21 -0400 | [diff] [blame] | 183 | config X86_DECODER_SELFTEST | 
| OGAWA Hirofumi | cbe5c34 | 2009-12-06 20:14:29 +0900 | [diff] [blame] | 184 | bool "x86 instruction decoder selftest" | 
|  | 185 | depends on DEBUG_KERNEL && KPROBES | 
| Masami Hiramatsu | ca0e9ba | 2009-08-13 16:34:21 -0400 | [diff] [blame] | 186 | ---help--- | 
|  | 187 | Perform x86 instruction decoder selftests at build time. | 
|  | 188 | This option is useful for checking the sanity of x86 instruction | 
|  | 189 | decoder code. | 
|  | 190 | If unsure, say "N". | 
|  | 191 |  | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 192 | # | 
|  | 193 | # IO delay types: | 
|  | 194 | # | 
|  | 195 |  | 
|  | 196 | config IO_DELAY_TYPE_0X80 | 
|  | 197 | int | 
|  | 198 | default "0" | 
|  | 199 |  | 
|  | 200 | config IO_DELAY_TYPE_0XED | 
|  | 201 | int | 
|  | 202 | default "1" | 
|  | 203 |  | 
|  | 204 | config IO_DELAY_TYPE_UDELAY | 
|  | 205 | int | 
|  | 206 | default "2" | 
|  | 207 |  | 
|  | 208 | config IO_DELAY_TYPE_NONE | 
|  | 209 | int | 
|  | 210 | default "3" | 
|  | 211 |  | 
|  | 212 | choice | 
|  | 213 | prompt "IO delay type" | 
| Ingo Molnar | fd59e9e | 2008-02-17 20:20:24 +0100 | [diff] [blame] | 214 | default IO_DELAY_0X80 | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 215 |  | 
|  | 216 | config IO_DELAY_0X80 | 
|  | 217 | bool "port 0x80 based port-IO delay [recommended]" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 218 | ---help--- | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 219 | This is the traditional Linux IO delay used for in/out_p. | 
|  | 220 | It is the most tested hence safest selection here. | 
|  | 221 |  | 
|  | 222 | config IO_DELAY_0XED | 
|  | 223 | bool "port 0xed based port-IO delay" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 224 | ---help--- | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 225 | Use port 0xed as the IO delay. This frees up port 0x80 which is | 
|  | 226 | often used as a hardware-debug port. | 
|  | 227 |  | 
|  | 228 | config IO_DELAY_UDELAY | 
|  | 229 | bool "udelay based port-IO delay" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 230 | ---help--- | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 231 | Use udelay(2) as the IO delay method. This provides the delay | 
|  | 232 | while not having any side-effect on the IO port space. | 
|  | 233 |  | 
|  | 234 | config IO_DELAY_NONE | 
|  | 235 | bool "no port-IO delay" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 236 | ---help--- | 
| Ingo Molnar | 6e7c402 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 237 | No port-IO delay. Will break on old boxes that require port-IO | 
|  | 238 | delay for certain operations. Should work on most new machines. | 
|  | 239 |  | 
|  | 240 | endchoice | 
|  | 241 |  | 
|  | 242 | if IO_DELAY_0X80 | 
|  | 243 | config DEFAULT_IO_DELAY_TYPE | 
|  | 244 | int | 
|  | 245 | default IO_DELAY_TYPE_0X80 | 
|  | 246 | endif | 
|  | 247 |  | 
|  | 248 | if IO_DELAY_0XED | 
|  | 249 | config DEFAULT_IO_DELAY_TYPE | 
|  | 250 | int | 
|  | 251 | default IO_DELAY_TYPE_0XED | 
|  | 252 | endif | 
|  | 253 |  | 
|  | 254 | if IO_DELAY_UDELAY | 
|  | 255 | config DEFAULT_IO_DELAY_TYPE | 
|  | 256 | int | 
|  | 257 | default IO_DELAY_TYPE_UDELAY | 
|  | 258 | endif | 
|  | 259 |  | 
|  | 260 | if IO_DELAY_NONE | 
|  | 261 | config DEFAULT_IO_DELAY_TYPE | 
|  | 262 | int | 
|  | 263 | default IO_DELAY_TYPE_NONE | 
|  | 264 | endif | 
| Rene Herman | b02aae9 | 2008-01-30 13:30:05 +0100 | [diff] [blame] | 265 |  | 
| Huang, Ying | 6d7d743 | 2008-01-30 13:32:51 +0100 | [diff] [blame] | 266 | config DEBUG_BOOT_PARAMS | 
|  | 267 | bool "Debug boot parameters" | 
|  | 268 | depends on DEBUG_KERNEL | 
|  | 269 | depends on DEBUG_FS | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 270 | ---help--- | 
| Huang, Ying | 6d7d743 | 2008-01-30 13:32:51 +0100 | [diff] [blame] | 271 | This option will cause struct boot_params to be exported via debugfs. | 
|  | 272 |  | 
| Andi Kleen | 0c42f39 | 2008-01-30 13:33:42 +0100 | [diff] [blame] | 273 | config CPA_DEBUG | 
| Ingo Molnar | 971a52d | 2008-02-06 22:39:45 +0100 | [diff] [blame] | 274 | bool "CPA self-test code" | 
| Ingo Molnar | f316fe6 | 2008-01-30 13:34:04 +0100 | [diff] [blame] | 275 | depends on DEBUG_KERNEL | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 276 | ---help--- | 
| Ingo Molnar | 971a52d | 2008-02-06 22:39:45 +0100 | [diff] [blame] | 277 | Do change_page_attr() self-tests every 30 seconds. | 
| Andi Kleen | 0c42f39 | 2008-01-30 13:33:42 +0100 | [diff] [blame] | 278 |  | 
| Ingo Molnar | 60a3cdd | 2008-03-03 12:38:52 +0100 | [diff] [blame] | 279 | config OPTIMIZE_INLINING | 
|  | 280 | bool "Allow gcc to uninline functions marked 'inline'" | 
| Ingo Molnar | 8f9ca47 | 2009-02-05 16:21:53 +0100 | [diff] [blame] | 281 | ---help--- | 
| Ingo Molnar | 60a3cdd | 2008-03-03 12:38:52 +0100 | [diff] [blame] | 282 | This option determines if the kernel forces gcc to inline the functions | 
|  | 283 | developers have marked 'inline'. Doing so takes away freedom from gcc to | 
|  | 284 | do what it thinks is best, which is desirable for the gcc 3.x series of | 
|  | 285 | compilers. The gcc 4.x series have a rewritten inlining algorithm and | 
| Sitsofe Wheeler | 63fb708 | 2008-10-11 20:27:53 +0100 | [diff] [blame] | 286 | enabling this option will generate a smaller kernel there. Hopefully | 
|  | 287 | this algorithm is so good that allowing gcc 4.x and above to make the | 
|  | 288 | decision will become the default in the future. Until then this option | 
|  | 289 | is there to test gcc for this. | 
| Ingo Molnar | c9af1e3 | 2008-04-30 08:48:45 +0200 | [diff] [blame] | 290 |  | 
| Ingo Molnar | 3f9b5cc | 2008-07-18 16:30:05 +0200 | [diff] [blame] | 291 | If unsure, say N. | 
|  | 292 |  | 
| Arjan van de Ven | 63312b6 | 2009-10-02 07:50:50 -0700 | [diff] [blame] | 293 | config DEBUG_STRICT_USER_COPY_CHECKS | 
|  | 294 | bool "Strict copy size checks" | 
| Arjan van de Ven | ad8f435 | 2009-10-06 07:04:52 -0700 | [diff] [blame] | 295 | depends on DEBUG_KERNEL && !TRACE_BRANCH_PROFILING | 
| Arjan van de Ven | 63312b6 | 2009-10-02 07:50:50 -0700 | [diff] [blame] | 296 | ---help--- | 
|  | 297 | Enabling this option turns a certain set of sanity checks for user | 
|  | 298 | copy operations into compile time failures. | 
|  | 299 |  | 
|  | 300 | The copy_from_user() etc checks are there to help test if there | 
|  | 301 | are sufficient security checks on the length argument of | 
|  | 302 | the copy operation, by having gcc prove that the argument is | 
|  | 303 | within bounds. | 
|  | 304 |  | 
|  | 305 | If unsure, or if you run an older (pre 4.4) gcc, say N. | 
|  | 306 |  | 
| Ingo Molnar | c9af1e3 | 2008-04-30 08:48:45 +0200 | [diff] [blame] | 307 | endmenu |