mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-25 00:52:45 -04:00
mm: add link from struct lruvec to struct zone
This is the first stage of struct mem_cgroup_zone removal. Further patches replace struct mem_cgroup_zone with a pointer to struct lruvec. If CONFIG_CGROUP_MEM_RES_CTLR=n lruvec_zone() is just container_of(). Signed-off-by: Konstantin Khlebnikov <khlebnikov@openvz.org> Cc: Mel Gorman <mel@csn.ul.ie> Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Acked-by: Hugh Dickins <hughd@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
9e3b2f8cd3
commit
7f5e86c2cc
@@ -201,6 +201,9 @@ struct zone_reclaim_stat {
|
||||
struct lruvec {
|
||||
struct list_head lists[NR_LRU_LISTS];
|
||||
struct zone_reclaim_stat reclaim_stat;
|
||||
#ifdef CONFIG_CGROUP_MEM_RES_CTLR
|
||||
struct zone *zone;
|
||||
#endif
|
||||
};
|
||||
|
||||
/* Mask used at gathering information at once (see memcontrol.c) */
|
||||
@@ -729,6 +732,17 @@ extern int init_currently_empty_zone(struct zone *zone, unsigned long start_pfn,
|
||||
unsigned long size,
|
||||
enum memmap_context context);
|
||||
|
||||
extern void lruvec_init(struct lruvec *lruvec, struct zone *zone);
|
||||
|
||||
static inline struct zone *lruvec_zone(struct lruvec *lruvec)
|
||||
{
|
||||
#ifdef CONFIG_CGROUP_MEM_RES_CTLR
|
||||
return lruvec->zone;
|
||||
#else
|
||||
return container_of(lruvec, struct zone, lruvec);
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef CONFIG_HAVE_MEMORY_PRESENT
|
||||
void memory_present(int nid, unsigned long start, unsigned long end);
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user