forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
742 B
35 lines
742 B
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef _TOOLS_MMZONE_H |
|
#define _TOOLS_MMZONE_H |
|
|
|
#include <linux/atomic.h> |
|
|
|
struct pglist_data *first_online_pgdat(void); |
|
struct pglist_data *next_online_pgdat(struct pglist_data *pgdat); |
|
|
|
#define for_each_online_pgdat(pgdat) \ |
|
for (pgdat = first_online_pgdat(); \ |
|
pgdat; \ |
|
pgdat = next_online_pgdat(pgdat)) |
|
|
|
enum zone_type { |
|
__MAX_NR_ZONES |
|
}; |
|
|
|
#define MAX_NR_ZONES __MAX_NR_ZONES |
|
#define MAX_ORDER 11 |
|
#define MAX_ORDER_NR_PAGES (1 << (MAX_ORDER - 1)) |
|
|
|
#define pageblock_order (MAX_ORDER - 1) |
|
#define pageblock_nr_pages BIT(pageblock_order) |
|
|
|
struct zone { |
|
atomic_long_t managed_pages; |
|
}; |
|
|
|
typedef struct pglist_data { |
|
struct zone node_zones[MAX_NR_ZONES]; |
|
|
|
} pg_data_t; |
|
|
|
#endif
|
|
|