linux/include/linux/mm_types_task.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _LINUX_MM_TYPES_TASK_H
#define _LINUX_MM_TYPES_TASK_H

/*
 * Here are the definitions of the MM data types that are embedded in 'struct task_struct'.
 *
 * (These are defined separately to decouple sched.h from mm_types.h as much as possible.)
 */

#include <linux/types.h>

#include <asm/page.h>

#ifdef CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH
#include <asm/tlbbatch.h>
#endif

#define USE_SPLIT_PTE_PTLOCKS
#define USE_SPLIT_PMD_PTLOCKS
#define ALLOC_SPLIT_PTLOCKS

/*
 * When updating this, please also update struct resident_page_types[] in
 * kernel/fork.c
 */
enum {};

struct page;

struct page_frag {};

/* Track pages that require TLB flushes */
struct tlbflush_unmap_batch {};

#endif /* _LINUX_MM_TYPES_TASK_H */