• Hugh Dickins's avatar
    [PATCH] tmpfs: fix mount mpol nodelist parsing · b00dc3ad
    Hugh Dickins authored
    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: default avatarHugh Dickins <hugh@veritas.com>
    Acked-by: default avatarRobin Holt <holt@sgi.com>
    Acked-by: default avatarAndi Kleen <ak@suse.de>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    b00dc3ad
shmem.c 58.6 KB