]> err.no Git - linux-2.6/blobdiff - init/Kconfig
Add a configure option to group pages by mobility
[linux-2.6] / init / Kconfig
index d54d0cadcc064c284c10cce88beaf9c55ccf0cdd..bab643f7717f2a0be9b2b63d7c4d14acdb5a99e5 100644 (file)
@@ -281,6 +281,27 @@ config CPUSETS
 
          Say N if unsure.
 
+config FAIR_GROUP_SCHED
+       bool "Fair group CPU scheduler"
+       default y
+       depends on EXPERIMENTAL
+       help
+         This feature lets CPU scheduler recognize task groups and control CPU
+         bandwidth allocation to such task groups.
+
+choice
+       depends on FAIR_GROUP_SCHED
+       prompt "Basis for grouping tasks"
+       default FAIR_USER_SCHED
+
+config FAIR_USER_SCHED
+       bool "user id"
+       help
+         This option will choose userid as the basis for grouping
+         tasks, thus providing equal CPU bandwidth to each user.
+
+endchoice
+
 config SYSFS_DEPRECATED
        bool "Create deprecated sysfs files"
        default y
@@ -586,6 +607,19 @@ config BASE_SMALL
        default 0 if BASE_FULL
        default 1 if !BASE_FULL
 
+config PAGE_GROUP_BY_MOBILITY
+       bool "Group pages based on their mobility in the page allocator"
+       def_bool y
+       help
+         The standard allocator will fragment memory over time which means
+         that high order allocations will fail even if kswapd is running. If
+         this option is set, the allocator will try and group page types
+         based on their ability to migrate or reclaim. This is a best effort
+         attempt at lowering fragmentation which a few workloads care about.
+         The loss is a more complex allocator that may perform slower. If
+         you are interested in working with large pages, say Y and set
+         /proc/sys/vm/min_free_bytes to 16374. Otherwise say N
+
 menuconfig MODULES
        bool "Enable loadable module support"
        help