summaryrefslogtreecommitdiff
path: root/mm
diff options
context:
space:
mode:
authorVarun Wadekar <vwadekar@nvidia.com>2011-12-14 15:33:34 +0530
committerVarun Wadekar <vwadekar@nvidia.com>2011-12-14 15:33:34 +0530
commit638bc555a05c39ced59744c79c0461536782808d (patch)
tree42bf9c8cdfd44898be31bc31cf2e4743a2484cf4 /mm
parentf05a661e2247076a0c0e5a09ee8c4397b0de855e (diff)
parentcaf4b0430be8296bf644199bf3ed3056c02420c7 (diff)
Merge branch 'linux-3.1.5' into android-tegra-nv-3.1
Conflicts: arch/arm/Kconfig Change-Id: If8aaaf3efcbbf6c9017b38efb6d76ef933f147fa Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Diffstat (limited to 'mm')
-rw-r--r--mm/hugetlb.c2
-rw-r--r--mm/slab.c5
2 files changed, 6 insertions, 1 deletions
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index dae27ba3be2c..bb28a5f9db8d 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -2422,6 +2422,8 @@ retry_avoidcopy:
* anon_vma prepared.
*/
if (unlikely(anon_vma_prepare(vma))) {
+ page_cache_release(new_page);
+ page_cache_release(old_page);
/* Caller expects lock to be held */
spin_lock(&mm->page_table_lock);
return VM_FAULT_OOM;
diff --git a/mm/slab.c b/mm/slab.c
index 6d90a091fdca..893c76df9241 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -595,6 +595,7 @@ static enum {
PARTIAL_AC,
PARTIAL_L3,
EARLY,
+ LATE,
FULL
} g_cpucache_up;
@@ -671,7 +672,7 @@ static void init_node_lock_keys(int q)
{
struct cache_sizes *s = malloc_sizes;
- if (g_cpucache_up != FULL)
+ if (g_cpucache_up < LATE)
return;
for (s = malloc_sizes; s->cs_size != ULONG_MAX; s++) {
@@ -1666,6 +1667,8 @@ void __init kmem_cache_init_late(void)
{
struct kmem_cache *cachep;
+ g_cpucache_up = LATE;
+
/* Annotate slab for lockdep -- annotate the malloc caches */
init_lock_keys();