cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

mmzone.h (742B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _TOOLS_MMZONE_H
      3#define _TOOLS_MMZONE_H
      4
      5#include <linux/atomic.h>
      6
      7struct pglist_data *first_online_pgdat(void);
      8struct pglist_data *next_online_pgdat(struct pglist_data *pgdat);
      9
     10#define for_each_online_pgdat(pgdat)			\
     11	for (pgdat = first_online_pgdat();		\
     12	     pgdat;					\
     13	     pgdat = next_online_pgdat(pgdat))
     14
     15enum zone_type {
     16	__MAX_NR_ZONES
     17};
     18
     19#define MAX_NR_ZONES __MAX_NR_ZONES
     20#define MAX_ORDER 11
     21#define MAX_ORDER_NR_PAGES (1 << (MAX_ORDER - 1))
     22
     23#define pageblock_order		(MAX_ORDER - 1)
     24#define pageblock_nr_pages	BIT(pageblock_order)
     25
     26struct zone {
     27	atomic_long_t		managed_pages;
     28};
     29
     30typedef struct pglist_data {
     31	struct zone node_zones[MAX_NR_ZONES];
     32
     33} pg_data_t;
     34
     35#endif