OpenCores
URL https://opencores.org/ocsvn/or1k_soc_on_altera_embedded_dev_kit/or1k_soc_on_altera_embedded_dev_kit/trunk

Subversion Repositories or1k_soc_on_altera_embedded_dev_kit

[/] [or1k_soc_on_altera_embedded_dev_kit/] [tags/] [linux-2.6/] [linux-2.6.24_or32_unified_v2.3/] [mm/] [mmzone.c] - Blame information for rev 3

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 xianfeng
/*
2
 * linux/mm/mmzone.c
3
 *
4
 * management codes for pgdats and zones.
5
 */
6
 
7
 
8
#include <linux/stddef.h>
9
#include <linux/mmzone.h>
10
#include <linux/module.h>
11
 
12
struct pglist_data *first_online_pgdat(void)
13
{
14
        return NODE_DATA(first_online_node);
15
}
16
 
17
struct pglist_data *next_online_pgdat(struct pglist_data *pgdat)
18
{
19
        int nid = next_online_node(pgdat->node_id);
20
 
21
        if (nid == MAX_NUMNODES)
22
                return NULL;
23
        return NODE_DATA(nid);
24
}
25
 
26
/*
27
 * next_zone - helper magic for for_each_zone()
28
 */
29
struct zone *next_zone(struct zone *zone)
30
{
31
        pg_data_t *pgdat = zone->zone_pgdat;
32
 
33
        if (zone < pgdat->node_zones + MAX_NR_ZONES - 1)
34
                zone++;
35
        else {
36
                pgdat = next_online_pgdat(pgdat);
37
                if (pgdat)
38
                        zone = pgdat->node_zones;
39
                else
40
                        zone = NULL;
41
        }
42
        return zone;
43
}
44
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.