aboutsummaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorDavid Rientjes <rientjes@google.com>2012-12-11 19:02:51 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-12-11 20:22:27 -0500
commit212a0a6f28dda0a1e732d20d57abb465750d473c (patch)
tree0a6bf85ca746d0e3a4001f3905c0ecd2dcbc0b89 /mm
parent6f6313d4870f9642cb3ea8ec892cf6da81331b9c (diff)
mm, mempolicy: remove duplicate code
Remove some duplicate code and simplify alloc_pages_vma(). No functional change. Signed-off-by: David Rientjes <rientjes@google.com> Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r--mm/mempolicy.c21
1 files changed, 4 insertions, 17 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index 4ea600da8940..05b28361a39b 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -1907,7 +1907,6 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma,
1907 unsigned long addr, int node) 1907 unsigned long addr, int node)
1908{ 1908{
1909 struct mempolicy *pol; 1909 struct mempolicy *pol;
1910 struct zonelist *zl;
1911 struct page *page; 1910 struct page *page;
1912 unsigned int cpuset_mems_cookie; 1911 unsigned int cpuset_mems_cookie;
1913 1912
@@ -1926,23 +1925,11 @@ retry_cpuset:
1926 1925
1927 return page; 1926 return page;
1928 } 1927 }
1929 zl = policy_zonelist(gfp, pol, node); 1928 page = __alloc_pages_nodemask(gfp, order,
1930 if (unlikely(mpol_needs_cond_ref(pol))) { 1929 policy_zonelist(gfp, pol, node),
1931 /*
1932 * slow path: ref counted shared policy
1933 */
1934 struct page *page = __alloc_pages_nodemask(gfp, order,
1935 zl, policy_nodemask(gfp, pol));
1936 __mpol_put(pol);
1937 if (unlikely(!put_mems_allowed(cpuset_mems_cookie) && !page))
1938 goto retry_cpuset;
1939 return page;
1940 }
1941 /*
1942 * fast path: default or task policy
1943 */
1944 page = __alloc_pages_nodemask(gfp, order, zl,
1945 policy_nodemask(gfp, pol)); 1930 policy_nodemask(gfp, pol));
1931 if (unlikely(mpol_needs_cond_ref(pol)))
1932 __mpol_put(pol);
1946 if (unlikely(!put_mems_allowed(cpuset_mems_cookie) && !page)) 1933 if (unlikely(!put_mems_allowed(cpuset_mems_cookie) && !page))
1947 goto retry_cpuset; 1934 goto retry_cpuset;
1948 return page; 1935 return page;