Kconfig (e981b060767b3c4ac9393ad8d2558d648e35dfcb) | Kconfig (a57eb940d130477a799dfb24a570ee04979c0f7f) |
---|---|
1config ARCH 2 string 3 option env="ARCH" 4 5config KERNELVERSION 6 string 7 option env="KERNELVERSION" 8 --- 326 unchanged lines hidden (view full) --- 335menu "RCU Subsystem" 336 337choice 338 prompt "RCU Implementation" 339 default TREE_RCU 340 341config TREE_RCU 342 bool "Tree-based hierarchical RCU" | 1config ARCH 2 string 3 option env="ARCH" 4 5config KERNELVERSION 6 string 7 option env="KERNELVERSION" 8 --- 326 unchanged lines hidden (view full) --- 335menu "RCU Subsystem" 336 337choice 338 prompt "RCU Implementation" 339 default TREE_RCU 340 341config TREE_RCU 342 bool "Tree-based hierarchical RCU" |
343 depends on !PREEMPT && SMP |
|
343 help 344 This option selects the RCU implementation that is 345 designed for very large SMP system with hundreds or 346 thousands of CPUs. It also scales down nicely to 347 smaller systems. 348 349config TREE_PREEMPT_RCU | 344 help 345 This option selects the RCU implementation that is 346 designed for very large SMP system with hundreds or 347 thousands of CPUs. It also scales down nicely to 348 smaller systems. 349 350config TREE_PREEMPT_RCU |
350 bool "Preemptable tree-based hierarchical RCU" | 351 bool "Preemptible tree-based hierarchical RCU" |
351 depends on PREEMPT 352 help 353 This option selects the RCU implementation that is 354 designed for very large SMP systems with hundreds or 355 thousands of CPUs, but for which real-time response 356 is also required. It also scales down nicely to 357 smaller systems. 358 359config TINY_RCU 360 bool "UP-only small-memory-footprint RCU" 361 depends on !SMP 362 help 363 This option selects the RCU implementation that is 364 designed for UP systems from which real-time response 365 is not required. This option greatly reduces the 366 memory footprint of RCU. 367 | 352 depends on PREEMPT 353 help 354 This option selects the RCU implementation that is 355 designed for very large SMP systems with hundreds or 356 thousands of CPUs, but for which real-time response 357 is also required. It also scales down nicely to 358 smaller systems. 359 360config TINY_RCU 361 bool "UP-only small-memory-footprint RCU" 362 depends on !SMP 363 help 364 This option selects the RCU implementation that is 365 designed for UP systems from which real-time response 366 is not required. This option greatly reduces the 367 memory footprint of RCU. 368 |
369config TINY_PREEMPT_RCU 370 bool "Preemptible UP-only small-memory-footprint RCU" 371 depends on !SMP && PREEMPT 372 help 373 This option selects the RCU implementation that is designed 374 for real-time UP systems. This option greatly reduces the 375 memory footprint of RCU. 376 |
|
368endchoice 369 | 377endchoice 378 |
379config PREEMPT_RCU 380 def_bool ( TREE_PREEMPT_RCU || TINY_PREEMPT_RCU ) 381 help 382 This option enables preemptible-RCU code that is common between 383 the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations. 384 |
|
370config RCU_TRACE 371 bool "Enable tracing for RCU" 372 depends on TREE_RCU || TREE_PREEMPT_RCU 373 help 374 This option provides tracing in RCU which presents stats 375 in debugfs for debugging RCU implementation. 376 377 Say Y here if you want to enable RCU tracing --- 4 unchanged lines hidden (view full) --- 382 range 2 64 if 64BIT 383 range 2 32 if !64BIT 384 depends on TREE_RCU || TREE_PREEMPT_RCU 385 default 64 if 64BIT 386 default 32 if !64BIT 387 help 388 This option controls the fanout of hierarchical implementations 389 of RCU, allowing RCU to work efficiently on machines with | 385config RCU_TRACE 386 bool "Enable tracing for RCU" 387 depends on TREE_RCU || TREE_PREEMPT_RCU 388 help 389 This option provides tracing in RCU which presents stats 390 in debugfs for debugging RCU implementation. 391 392 Say Y here if you want to enable RCU tracing --- 4 unchanged lines hidden (view full) --- 397 range 2 64 if 64BIT 398 range 2 32 if !64BIT 399 depends on TREE_RCU || TREE_PREEMPT_RCU 400 default 64 if 64BIT 401 default 32 if !64BIT 402 help 403 This option controls the fanout of hierarchical implementations 404 of RCU, allowing RCU to work efficiently on machines with |
390 large numbers of CPUs. This value must be at least the cube 391 root of NR_CPUS, which allows NR_CPUS up to 32,768 for 32-bit 392 systems and up to 262,144 for 64-bit systems. | 405 large numbers of CPUs. This value must be at least the fourth 406 root of NR_CPUS, which allows NR_CPUS to be insanely large. 407 The default value of RCU_FANOUT should be used for production 408 systems, but if you are stress-testing the RCU implementation 409 itself, small RCU_FANOUT values allow you to test large-system 410 code paths on small(er) systems. |
393 394 Select a specific number if testing RCU itself. 395 Take the default if unsure. 396 397config RCU_FANOUT_EXACT 398 bool "Disable tree-based hierarchical RCU auto-balancing" 399 depends on TREE_RCU || TREE_PREEMPT_RCU 400 default n --- 866 unchanged lines hidden --- | 411 412 Select a specific number if testing RCU itself. 413 Take the default if unsure. 414 415config RCU_FANOUT_EXACT 416 bool "Disable tree-based hierarchical RCU auto-balancing" 417 depends on TREE_RCU || TREE_PREEMPT_RCU 418 default n --- 866 unchanged lines hidden --- |