Merge tag 'arm64-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas...
[linux-3.10.git] / init / Kconfig
index 8bfda46..495e6e9 100644 (file)
@@ -267,6 +267,106 @@ config POSIX_MQUEUE_SYSCTL
        depends on SYSCTL
        default y
 
+config FHANDLE
+       bool "open by fhandle syscalls"
+       select EXPORTFS
+       help
+         If you say Y here, a user level program will be able to map
+         file names to handle and then later use the handle for
+         different file system operations. This is useful in implementing
+         userspace file servers, which now track files using handles instead
+         of names. The handle would remain the same even if file names
+         get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
+         syscalls.
+
+config AUDIT
+       bool "Auditing support"
+       depends on NET
+       help
+         Enable auditing infrastructure that can be used with another
+         kernel subsystem, such as SELinux (which requires this for
+         logging of avc messages output).  Does not do system-call
+         auditing without CONFIG_AUDITSYSCALL.
+
+config AUDITSYSCALL
+       bool "Enable system-call auditing support"
+       depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH || (ARM && AEABI && !OABI_COMPAT))
+       default y if SECURITY_SELINUX
+       help
+         Enable low-overhead system-call auditing infrastructure that
+         can be used independently or with another kernel subsystem,
+         such as SELinux.
+
+config AUDIT_WATCH
+       def_bool y
+       depends on AUDITSYSCALL
+       select FSNOTIFY
+
+config AUDIT_TREE
+       def_bool y
+       depends on AUDITSYSCALL
+       select FSNOTIFY
+
+config AUDIT_LOGINUID_IMMUTABLE
+       bool "Make audit loginuid immutable"
+       depends on AUDIT
+       help
+         The config option toggles if a task setting its loginuid requires
+         CAP_SYS_AUDITCONTROL or if that task should require no special permissions
+         but should instead only allow setting its loginuid if it was never
+         previously set.  On systems which use systemd or a similar central
+         process to restart login services this should be set to true.  On older
+         systems in which an admin would typically have to directly stop and
+         start processes this should be set to false.  Setting this to true allows
+         one to drop potentially dangerous capabilites from the login tasks,
+         but may not be backwards compatible with older init systems.
+
+source "kernel/irq/Kconfig"
+source "kernel/time/Kconfig"
+
+menu "CPU/Task time and stats accounting"
+
+choice
+       prompt "Cputime accounting"
+       default TICK_CPU_ACCOUNTING if !PPC64
+       default VIRT_CPU_ACCOUNTING if PPC64
+
+# Kind of a stub config for the pure tick based cputime accounting
+config TICK_CPU_ACCOUNTING
+       bool "Simple tick based cputime accounting"
+       depends on !S390
+       help
+         This is the basic tick based cputime accounting that maintains
+         statistics about user, system and idle time spent on per jiffies
+         granularity.
+
+         If unsure, say Y.
+
+config VIRT_CPU_ACCOUNTING
+       bool "Deterministic task and CPU time accounting"
+       depends on HAVE_VIRT_CPU_ACCOUNTING
+       help
+         Select this option to enable more accurate task and CPU time
+         accounting.  This is done by reading a CPU counter on each
+         kernel entry and exit and on transitions within the kernel
+         between system, softirq and hardirq state, so there is a
+         small performance impact.  In the case of s390 or IBM POWER > 5,
+         this also enables accounting of stolen time on logically-partitioned
+         systems.
+
+config IRQ_TIME_ACCOUNTING
+       bool "Fine granularity task level IRQ time accounting"
+       depends on HAVE_IRQ_TIME_ACCOUNTING
+       help
+         Select this option to enable fine granularity task irq time
+         accounting. This is done by reading a timestamp on each
+         transitions between softirq and hardirq state, so there can be a
+         small performance impact.
+
+         If in doubt, say N here.
+
+endchoice
+
 config BSD_PROCESS_ACCT
        bool "BSD Process Accounting"
        help
@@ -292,18 +392,6 @@ config BSD_PROCESS_ACCT_V3
          for processing it. A preliminary version of these tools is available
          at <http://www.gnu.org/software/acct/>.
 
-config FHANDLE
-       bool "open by fhandle syscalls"
-       select EXPORTFS
-       help
-         If you say Y here, a user level program will be able to map
-         file names to handle and then later use the handle for
-         different file system operations. This is useful in implementing
-         userspace file servers, which now track files using handles instead
-         of names. The handle would remain the same even if file names
-         get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2)
-         syscalls.
-
 config TASKSTATS
        bool "Export task/process statistics through netlink (EXPERIMENTAL)"
        depends on NET
@@ -346,50 +434,7 @@ config TASK_IO_ACCOUNTING
 
          Say N if unsure.
 
-config AUDIT
-       bool "Auditing support"
-       depends on NET
-       help
-         Enable auditing infrastructure that can be used with another
-         kernel subsystem, such as SELinux (which requires this for
-         logging of avc messages output).  Does not do system-call
-         auditing without CONFIG_AUDITSYSCALL.
-
-config AUDITSYSCALL
-       bool "Enable system-call auditing support"
-       depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH || (ARM && AEABI && !OABI_COMPAT))
-       default y if SECURITY_SELINUX
-       help
-         Enable low-overhead system-call auditing infrastructure that
-         can be used independently or with another kernel subsystem,
-         such as SELinux.
-
-config AUDIT_WATCH
-       def_bool y
-       depends on AUDITSYSCALL
-       select FSNOTIFY
-
-config AUDIT_TREE
-       def_bool y
-       depends on AUDITSYSCALL
-       select FSNOTIFY
-
-config AUDIT_LOGINUID_IMMUTABLE
-       bool "Make audit loginuid immutable"
-       depends on AUDIT
-       help
-         The config option toggles if a task setting its loginuid requires
-         CAP_SYS_AUDITCONTROL or if that task should require no special permissions
-         but should instead only allow setting its loginuid if it was never
-         previously set.  On systems which use systemd or a similar central
-         process to restart login services this should be set to true.  On older
-         systems in which an admin would typically have to directly stop and
-         start processes this should be set to false.  Setting this to true allows
-         one to drop potentially dangerous capabilites from the login tasks,
-         but may not be backwards compatible with older init systems.
-
-source "kernel/irq/Kconfig"
-source "kernel/time/Kconfig"
+endmenu # "CPU/Task time and stats accounting"
 
 menu "RCU Subsystem"
 
@@ -441,6 +486,24 @@ config PREEMPT_RCU
          This option enables preemptible-RCU code that is common between
          the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations.
 
+config RCU_USER_QS
+       bool "Consider userspace as in RCU extended quiescent state"
+       depends on HAVE_RCU_USER_QS && SMP
+       help
+         This option sets hooks on kernel / userspace boundaries and
+         puts RCU in extended quiescent state when the CPU runs in
+         userspace. It means that when a CPU runs in userspace, it is
+         excluded from the global RCU state machine and thus doesn't
+         to keep the timer tick on for RCU.
+
+config RCU_USER_QS_FORCE
+       bool "Force userspace extended QS by default"
+       depends on RCU_USER_QS
+       help
+         Set the hooks in user/kernel boundaries by default in order to
+         test this feature that treats userspace as an extended quiescent
+         state until we have a real user like a full adaptive nohz option.
+
 config RCU_FANOUT
        int "Tree-based hierarchical RCU fanout value"
        range 2 64 if 64BIT