aboutsummaryrefslogtreecommitdiffstats
path: root/mm/shmem.c
diff options
context:
space:
mode:
authorDavid Rientjes <rientjes@google.com>2008-04-28 05:12:23 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-28 11:58:19 -0400
commita3b51e0142d1be156ac697eaadadd6cfbb7ba32b (patch)
treeda9e527316f112c09f0bc16553c64e3c87125c82 /mm/shmem.c
parent1b27d05b6e21249d2338be26dfcbe8f8d8ff8a5b (diff)
mempolicy: convert MPOL constants to enum
The mempolicy mode constants, MPOL_DEFAULT, MPOL_PREFERRED, MPOL_BIND, and MPOL_INTERLEAVE, are better declared as part of an enum since they are sequentially numbered and cannot be combined. The policy member of struct mempolicy is also converted from type short to type unsigned short. A negative policy does not have any legitimate meaning, so it is possible to change its type in preparation for adding optional mode flags later. The equivalent member of struct shmem_sb_info is also changed from int to unsigned short. For compatibility, the policy formal to get_mempolicy() remains as a pointer to an int: int get_mempolicy(int *policy, unsigned long *nmask, unsigned long maxnode, unsigned long addr, unsigned long flags); although the only possible values is the range of type unsigned short. Cc: Paul Jackson <pj@sgi.com> Cc: Christoph Lameter <clameter@sgi.com> Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com> Cc: Andi Kleen <ak@suse.de> Signed-off-by: David Rientjes <rientjes@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/shmem.c')
-rw-r--r--mm/shmem.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/mm/shmem.c b/mm/shmem.c
index f514dd392cd9..d8ef7ba831a5 100644
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -1079,7 +1079,8 @@ redirty:
1079 1079
1080#ifdef CONFIG_NUMA 1080#ifdef CONFIG_NUMA
1081#ifdef CONFIG_TMPFS 1081#ifdef CONFIG_TMPFS
1082static int shmem_parse_mpol(char *value, int *policy, nodemask_t *policy_nodes) 1082static int shmem_parse_mpol(char *value, unsigned short *policy,
1083 nodemask_t *policy_nodes)
1083{ 1084{
1084 char *nodelist = strchr(value, ':'); 1085 char *nodelist = strchr(value, ':');
1085 int err = 1; 1086 int err = 1;
@@ -1128,7 +1129,7 @@ out:
1128 return err; 1129 return err;
1129} 1130}
1130 1131
1131static void shmem_show_mpol(struct seq_file *seq, int policy, 1132static void shmem_show_mpol(struct seq_file *seq, unsigned short policy,
1132 const nodemask_t policy_nodes) 1133 const nodemask_t policy_nodes)
1133{ 1134{
1134 char *policy_string; 1135 char *policy_string;
@@ -1197,13 +1198,13 @@ static struct page *shmem_alloc_page(gfp_t gfp,
1197} 1198}
1198#else /* !CONFIG_NUMA */ 1199#else /* !CONFIG_NUMA */
1199#ifdef CONFIG_TMPFS 1200#ifdef CONFIG_TMPFS
1200static inline int shmem_parse_mpol(char *value, int *policy, 1201static inline int shmem_parse_mpol(char *value, unsigned short *policy,
1201 nodemask_t *policy_nodes) 1202 nodemask_t *policy_nodes)
1202{ 1203{
1203 return 1; 1204 return 1;
1204} 1205}
1205 1206
1206static inline void shmem_show_mpol(struct seq_file *seq, int policy, 1207static inline void shmem_show_mpol(struct seq_file *seq, unsigned short policy,
1207 const nodemask_t policy_nodes) 1208 const nodemask_t policy_nodes)
1208{ 1209{
1209} 1210}