projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'akpm' (patches from Andrew)
[linux-2.6-microblaze.git]
/
mm
/
memcontrol.c
diff --git
a/mm/memcontrol.c
b/mm/memcontrol.c
index
845eec0
..
e064ac0
100644
(file)
--- a/
mm/memcontrol.c
+++ b/
mm/memcontrol.c
@@
-3287,24
+3287,21
@@
void obj_cgroup_uncharge(struct obj_cgroup *objcg, size_t size)
#endif /* CONFIG_MEMCG_KMEM */
#endif /* CONFIG_MEMCG_KMEM */
-#ifdef CONFIG_TRANSPARENT_HUGEPAGE
/*
/*
- * Because page_memcg(head) is not set on
compound
tails, set it now.
+ * Because page_memcg(head) is not set on tails, set it now.
*/
*/
-void
mem_cgroup_split_huge_fixup(struct page *head
)
+void
split_page_memcg(struct page *head, unsigned int nr
)
{
struct mem_cgroup *memcg = page_memcg(head);
int i;
{
struct mem_cgroup *memcg = page_memcg(head);
int i;
- if (mem_cgroup_disabled())
+ if (mem_cgroup_disabled()
|| !memcg
)
return;
return;
- for (i = 1; i < HPAGE_PMD_NR; i++) {
- css_get(&memcg->css);
- head[i].memcg_data = (unsigned long)memcg;
- }
+ for (i = 1; i < nr; i++)
+ head[i].memcg_data = head->memcg_data;
+ css_get_many(&memcg->css, nr - 1);
}
}
-#endif /* CONFIG_TRANSPARENT_HUGEPAGE */
#ifdef CONFIG_MEMCG_SWAP
/**
#ifdef CONFIG_MEMCG_SWAP
/**