Kconfig (851462444d421c223965b12b836bef63da61b57f) Kconfig (91d1aa43d30505b0b825db8898ffc80a8eca96c7)
1config ARCH
2 string
3 option env="ARCH"
4
5config KERNELVERSION
6 string
7 option env="KERNELVERSION"
8

--- 472 unchanged lines hidden (view full) ---

481endchoice
482
483config PREEMPT_RCU
484 def_bool ( TREE_PREEMPT_RCU || TINY_PREEMPT_RCU )
485 help
486 This option enables preemptible-RCU code that is common between
487 the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations.
488
1config ARCH
2 string
3 option env="ARCH"
4
5config KERNELVERSION
6 string
7 option env="KERNELVERSION"
8

--- 472 unchanged lines hidden (view full) ---

481endchoice
482
483config PREEMPT_RCU
484 def_bool ( TREE_PREEMPT_RCU || TINY_PREEMPT_RCU )
485 help
486 This option enables preemptible-RCU code that is common between
487 the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations.
488
489config CONTEXT_TRACKING
490 bool
491
489config RCU_USER_QS
490 bool "Consider userspace as in RCU extended quiescent state"
492config RCU_USER_QS
493 bool "Consider userspace as in RCU extended quiescent state"
491 depends on HAVE_RCU_USER_QS && SMP
494 depends on HAVE_CONTEXT_TRACKING && SMP
495 select CONTEXT_TRACKING
492 help
493 This option sets hooks on kernel / userspace boundaries and
494 puts RCU in extended quiescent state when the CPU runs in
495 userspace. It means that when a CPU runs in userspace, it is
496 excluded from the global RCU state machine and thus doesn't
496 help
497 This option sets hooks on kernel / userspace boundaries and
498 puts RCU in extended quiescent state when the CPU runs in
499 userspace. It means that when a CPU runs in userspace, it is
500 excluded from the global RCU state machine and thus doesn't
497 to keep the timer tick on for RCU.
501 try to keep the timer tick on for RCU.
498
499 Unless you want to hack and help the development of the full
502
503 Unless you want to hack and help the development of the full
500 tickless feature, you shouldn't enable this option. It adds
501 unnecessary overhead.
504 dynticks mode, you shouldn't enable this option. It also
505 adds unnecessary overhead.
502
503 If unsure say N
504
506
507 If unsure say N
508
505config RCU_USER_QS_FORCE
506 bool "Force userspace extended QS by default"
507 depends on RCU_USER_QS
509config CONTEXT_TRACKING_FORCE
510 bool "Force context tracking"
511 depends on CONTEXT_TRACKING
508 help
512 help
509 Set the hooks in user/kernel boundaries by default in order to
510 test this feature that treats userspace as an extended quiescent
511 state until we have a real user like a full adaptive nohz option.
513 Probe on user/kernel boundaries by default in order to
514 test the features that rely on it such as userspace RCU extended
515 quiescent states.
516 This test is there for debugging until we have a real user like the
517 full dynticks mode.
512
518
513 Unless you want to hack and help the development of the full
514 tickless feature, you shouldn't enable this option. It adds
515 unnecessary overhead.
516
517 If unsure say N
518
519config RCU_FANOUT
520 int "Tree-based hierarchical RCU fanout value"
521 range 2 64 if 64BIT
522 range 2 32 if !64BIT
523 depends on TREE_RCU || TREE_PREEMPT_RCU
524 default 64 if 64BIT
525 default 32 if !64BIT
526 help

--- 50 unchanged lines hidden (view full) ---

577
578 Say N if unsure.
579
580config RCU_FAST_NO_HZ
581 bool "Accelerate last non-dyntick-idle CPU's grace periods"
582 depends on NO_HZ && SMP
583 default n
584 help
519config RCU_FANOUT
520 int "Tree-based hierarchical RCU fanout value"
521 range 2 64 if 64BIT
522 range 2 32 if !64BIT
523 depends on TREE_RCU || TREE_PREEMPT_RCU
524 default 64 if 64BIT
525 default 32 if !64BIT
526 help

--- 50 unchanged lines hidden (view full) ---

577
578 Say N if unsure.
579
580config RCU_FAST_NO_HZ
581 bool "Accelerate last non-dyntick-idle CPU's grace periods"
582 depends on NO_HZ && SMP
583 default n
584 help
585 This option causes RCU to attempt to accelerate grace periods
586 in order to allow CPUs to enter dynticks-idle state more
587 quickly. On the other hand, this option increases the overhead
588 of the dynticks-idle checking, particularly on systems with
589 large numbers of CPUs.
585 This option causes RCU to attempt to accelerate grace periods in
586 order to allow CPUs to enter dynticks-idle state more quickly.
587 On the other hand, this option increases the overhead of the
588 dynticks-idle checking, thus degrading scheduling latency.
590
589
591 Say Y if energy efficiency is critically important, particularly
592 if you have relatively few CPUs.
590 Say Y if energy efficiency is critically important, and you don't
591 care about real-time response.
593
594 Say N if you are unsure.
595
596config TREE_RCU_TRACE
597 def_bool RCU_TRACE && ( TREE_RCU || TREE_PREEMPT_RCU )
598 select DEBUG_FS
599 help
600 This option provides tracing for the TREE_RCU and

--- 49 unchanged lines hidden (view full) ---

650 help
651 This option specifies the time to wait after the beginning of
652 a given grace period before priority-boosting preempted RCU
653 readers blocking that grace period. Note that any RCU reader
654 blocking an expedited RCU grace period is boosted immediately.
655
656 Accept the default if unsure.
657
592
593 Say N if you are unsure.
594
595config TREE_RCU_TRACE
596 def_bool RCU_TRACE && ( TREE_RCU || TREE_PREEMPT_RCU )
597 select DEBUG_FS
598 help
599 This option provides tracing for the TREE_RCU and

--- 49 unchanged lines hidden (view full) ---

649 help
650 This option specifies the time to wait after the beginning of
651 a given grace period before priority-boosting preempted RCU
652 readers blocking that grace period. Note that any RCU reader
653 blocking an expedited RCU grace period is boosted immediately.
654
655 Accept the default if unsure.
656
657config RCU_NOCB_CPU
658 bool "Offload RCU callback processing from boot-selected CPUs"
659 depends on TREE_RCU || TREE_PREEMPT_RCU
660 default n
661 help
662 Use this option to reduce OS jitter for aggressive HPC or
663 real-time workloads. It can also be used to offload RCU
664 callback invocation to energy-efficient CPUs in battery-powered
665 asymmetric multiprocessors.
666
667 This option offloads callback invocation from the set of
668 CPUs specified at boot time by the rcu_nocbs parameter.
669 For each such CPU, a kthread ("rcuoN") will be created to
670 invoke callbacks, where the "N" is the CPU being offloaded.
671 Nothing prevents this kthread from running on the specified
672 CPUs, but (1) the kthreads may be preempted between each
673 callback, and (2) affinity or cgroups can be used to force
674 the kthreads to run on whatever set of CPUs is desired.
675
676 Say Y here if you want reduced OS jitter on selected CPUs.
677 Say N here if you are unsure.
678
658endmenu # "RCU Subsystem"
659
660config IKCONFIG
661 tristate "Kernel .config support"
662 ---help---
663 This option enables the complete Linux kernel ".config" file
664 contents to be saved in the kernel. It provides documentation
665 of which kernel options are used in a running kernel or in an

--- 1013 unchanged lines hidden ---
679endmenu # "RCU Subsystem"
680
681config IKCONFIG
682 tristate "Kernel .config support"
683 ---help---
684 This option enables the complete Linux kernel ".config" file
685 contents to be saved in the kernel. It provides documentation
686 of which kernel options are used in a running kernel or in an

--- 1013 unchanged lines hidden ---