sched/isolation: Document isolcpus= boot parameter flags, mark it deprecated
authorFrederic Weisbecker <frederic@kernel.org>
Tue, 31 Oct 2017 03:18:34 +0000 (04:18 +0100)
committerIngo Molnar <mingo@kernel.org>
Tue, 31 Oct 2017 09:29:39 +0000 (10:29 +0100)
Document the latest updates on the isolcpus= boot option. While at it,
let's also fix the details about the preferred way to isolate a set of
CPUs from the scheduler general domains. Cpusets offer a much better
interface to achieve that.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Cc: Chris Metcalf <cmetcalf@mellanox.com>
Cc: Christoph Lameter <cl@linux.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Luiz Capitulino <lcapitulino@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Wanpeng Li <kernellwp@gmail.com>
Link: http://lkml.kernel.org/r/1509419914-16179-1-git-send-email-frederic@kernel.org
[ Clarified the text some more, marked the boot option deprecated. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Documentation/admin-guide/kernel-parameters.txt

index 6b99c8b77c59105dac8cd4a52eaa7c026c4a1eca..17eb0234d5be9633f2de9988d8c4fd27b7e64fc5 100644 (file)
        isapnp=         [ISAPNP]
                        Format: <RDP>,<reset>,<pci_scan>,<verbosity>
 
-       isolcpus=       [KNL,SMP] Isolate CPUs from the general scheduler.
-                       The argument is a cpu list, as described above.
+       isolcpus=       [KNL,SMP] Isolate a given set of CPUs from disturbance.
+                       [Deprecated - use cpusets instead]
+                       Format: [flag-list,]<cpu-list>
+
+                       Specify one or more CPUs to isolate from disturbances
+                       specified in the flag list (default: domain):
+
+                       nohz
+                         Disable the tick when a single task runs.
+                       domain
+                         Isolate from the general SMP balancing and scheduling
+                         algorithms. Note that performing domain isolation this way
+                         is irreversible: it's not possible to bring back a CPU to
+                         the domains once isolated through isolcpus. It's strongly
+                         advised to use cpusets instead to disable scheduler load
+                         balancing through the "cpuset.sched_load_balance" file.
+                         It offers a much more flexible interface where CPUs can
+                         move in and out of an isolated set anytime.
+
+                         You can move a process onto or off an "isolated" CPU via
+                         the CPU affinity syscalls or cpuset.
+                         <cpu number> begins at 0 and the maximum value is
+                         "number of CPUs in system - 1".
+
+                       The format of <cpu-list> is described above.
+
 
-                       This option can be used to specify one or more CPUs
-                       to isolate from the general SMP balancing and scheduling
-                       algorithms. You can move a process onto or off an
-                       "isolated" CPU via the CPU affinity syscalls or cpuset.
-                       <cpu number> begins at 0 and the maximum value is
-                       "number of CPUs in system - 1".
-
-                       This option is the preferred way to isolate CPUs. The
-                       alternative -- manually setting the CPU mask of all
-                       tasks in the system -- can cause problems and
-                       suboptimal load balancer performance.
 
        iucv=           [HW,NET]