phy: rockchip-inno-usb2: rm phy_power_on/off in suspend/resume cases.
[firefly-linux-kernel-4.4.55.git] / init / Kconfig
index 235c7a2c0d2004f1121b7d98f4140683ab45ef53..acb6645ffda54b44c3e8350d9b67319a98929a76 100644 (file)
@@ -392,6 +392,15 @@ config IRQ_TIME_ACCOUNTING
 
 endchoice
 
 
 endchoice
 
+config SCHED_WALT
+        bool "Support window based load tracking"
+        depends on SMP
+        help
+        This feature will allow the scheduler to maintain a tunable window
+       based set of metrics for tasks and runqueues. These metrics can be
+       used to guide task placement as well as task frequency requirements
+       for cpufreq governors.
+
 config BSD_PROCESS_ACCT
        bool "BSD Process Accounting"
        depends on MULTIUSER
 config BSD_PROCESS_ACCT
        bool "BSD Process Accounting"
        depends on MULTIUSER
@@ -999,6 +1008,23 @@ config CGROUP_CPUACCT
          Provides a simple Resource Controller for monitoring the
          total CPU consumed by the tasks in a cgroup.
 
          Provides a simple Resource Controller for monitoring the
          total CPU consumed by the tasks in a cgroup.
 
+config CGROUP_SCHEDTUNE
+       bool "CFS tasks boosting cgroup subsystem (EXPERIMENTAL)"
+       depends on SCHED_TUNE
+       help
+         This option provides the "schedtune" controller which improves the
+         flexibility of the task boosting mechanism by introducing the support
+         to define "per task" boost values.
+
+         This new controller:
+         1. allows only a two layers hierarchy, where the root defines the
+            system-wide boost value and its direct childrens define each one a
+            different "class of tasks" to be boosted with a different value
+         2. supports up to 16 different task classes, each one which could be
+            configured with a different boost value
+
+         Say N if unsure.
+
 config PAGE_COUNTER
        bool
 
 config PAGE_COUNTER
        bool
 
@@ -1237,6 +1263,43 @@ config SCHED_AUTOGROUP
          desktop applications.  Task group autogeneration is currently based
          upon task session.
 
          desktop applications.  Task group autogeneration is currently based
          upon task session.
 
+config SCHED_TUNE
+       bool "Boosting for CFS tasks (EXPERIMENTAL)"
+       depends on SMP
+       help
+         This option enables the system-wide support for task boosting.
+         When this support is enabled a new sysctl interface is exposed to
+         userspace via:
+            /proc/sys/kernel/sched_cfs_boost
+         which allows to set a system-wide boost value in range [0..100].
+
+         The currently boosting strategy is implemented in such a way that:
+         - a 0% boost value requires to operate in "standard" mode by
+           scheduling all tasks at the minimum capacities required by their
+           workload demand
+         - a 100% boost value requires to push at maximum the task
+           performances, "regardless" of the incurred energy consumption
+
+         A boost value in between these two boundaries is used to bias the
+         power/performance trade-off, the higher the boost value the more the
+         scheduler is biased toward performance boosting instead of energy
+         efficiency.
+
+         Since this support exposes a single system-wide knob, the specified
+         boost value is applied to all (CFS) tasks in the system.
+
+         If unsure, say N.
+
+config DEFAULT_USE_ENERGY_AWARE
+       bool "Default to enabling the Energy Aware Scheduler feature"
+       default n
+       help
+         This option defaults the ENERGY_AWARE scheduling feature to true,
+         as without SCHED_DEBUG set this feature can't be enabled or disabled
+         via sysctl.
+
+         Say N if unsure.
+
 config SYSFS_DEPRECATED
        bool "Enable deprecated sysfs features to support old userspace tools"
        depends on SYSFS
 config SYSFS_DEPRECATED
        bool "Enable deprecated sysfs features to support old userspace tools"
        depends on SYSFS
@@ -1719,6 +1782,7 @@ choice
 
 config SLAB
        bool "SLAB"
 
 config SLAB
        bool "SLAB"
+       select HAVE_HARDENED_USERCOPY_ALLOCATOR
        help
          The regular slab allocator that is established and known to work
          well in all environments. It organizes cache hot objects in
        help
          The regular slab allocator that is established and known to work
          well in all environments. It organizes cache hot objects in
@@ -1726,6 +1790,7 @@ config SLAB
 
 config SLUB
        bool "SLUB (Unqueued Allocator)"
 
 config SLUB
        bool "SLUB (Unqueued Allocator)"
+       select HAVE_HARDENED_USERCOPY_ALLOCATOR
        help
           SLUB is a slab allocator that minimizes cache line usage
           instead of managing queues of cached objects (SLAB approach).
        help
           SLUB is a slab allocator that minimizes cache line usage
           instead of managing queues of cached objects (SLAB approach).