summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorHugh Dickins <hugh@veritas.com>2006-02-21 23:49:47 +0000
committerLinus Torvalds <torvalds@g5.osdl.org>2006-02-21 17:10:15 -0800
commitb00dc3ad74fdb676552d46ee573b88e927240d0c (patch)
tree6dcf7806f1f0fc791d3455dcf233a11088b18b3a /Documentation
parent808c783e9bfb217a90be5a996a867c41a69b40bd (diff)
downloadlinux-3.10-b00dc3ad74fdb676552d46ee573b88e927240d0c.tar.gz
linux-3.10-b00dc3ad74fdb676552d46ee573b88e927240d0c.tar.bz2
linux-3.10-b00dc3ad74fdb676552d46ee573b88e927240d0c.zip
[PATCH] tmpfs: fix mount mpol nodelist parsing
I've been dissatisfied with the mpol_nodelist mount option which was added to tmpfs earlier in -rc. Replace it by mpol=policy:nodelist. And it was broken: a nodelist is a comma-separated list of numbers and ranges; the mount options are a comma-separated list of token=values. Whoops, blindly strsep'ing on commas doesn't work so well: since we've no numeric tokens, and unlikely to add them, use that to distinguish. Move the mpol= parsing to shmem_parse_mpol under CONFIG_NUMA, reject all its options as invalid if not NUMA. /proc shows MPOL_PREFERRED as "prefer", so use that name for the policy instead of "preferred". Enforce that mpol=default has no nodelist; that mpol=prefer has one node only; that mpol=bind has a nodelist; but let mpol=interleave use node_online_map if no nodelist given. Describe this in tmpfs.txt. Signed-off-by: Hugh Dickins <hugh@veritas.com> Acked-by: Robin Holt <holt@sgi.com> Acked-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/filesystems/tmpfs.txt21
1 files changed, 12 insertions, 9 deletions
diff --git a/Documentation/filesystems/tmpfs.txt b/Documentation/filesystems/tmpfs.txt
index dbe4d87d261..8a155418c70 100644
--- a/Documentation/filesystems/tmpfs.txt
+++ b/Documentation/filesystems/tmpfs.txt
@@ -79,15 +79,18 @@ that instance in a system with many cpus making intensive use of it.
tmpfs has a mount option to set the NUMA memory allocation policy for
-all files in that instance:
-mpol=interleave prefers to allocate memory from each node in turn
-mpol=default prefers to allocate memory from the local node
-mpol=bind prefers to allocate from mpol_nodelist
-mpol=preferred prefers to allocate from first node in mpol_nodelist
+all files in that instance (if CONFIG_NUMA is enabled) - which can be
+adjusted on the fly via 'mount -o remount ...'
-The following mount option is used in conjunction with mpol=interleave,
-mpol=bind or mpol=preferred:
-mpol_nodelist: nodelist suitable for parsing with nodelist_parse.
+mpol=default prefers to allocate memory from the local node
+mpol=prefer:Node prefers to allocate memory from the given Node
+mpol=bind:NodeList allocates memory only from nodes in NodeList
+mpol=interleave prefers to allocate from each node in turn
+mpol=interleave:NodeList allocates from each node of NodeList in turn
+
+NodeList format is a comma-separated list of decimal numbers and ranges,
+a range being two hyphen-separated decimal numbers, the smallest and
+largest node numbers in the range. For example, mpol=bind:0-3,5,7,9-15
To specify the initial root directory you can use the following mount
@@ -109,4 +112,4 @@ RAM/SWAP in 10240 inodes and it is only accessible by root.
Author:
Christoph Rohland <cr@sap.com>, 1.12.01
Updated:
- Hugh Dickins <hugh@veritas.com>, 13 March 2005
+ Hugh Dickins <hugh@veritas.com>, 19 February 2006