summaryrefslogtreecommitdiff
path: root/include/linux/mm_types.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/mm_types.h')
-rw-r--r--include/linux/mm_types.h40
1 files changed, 26 insertions, 14 deletions
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
index 939b5ea8c9e0..6d815f6440c9 100644
--- a/include/linux/mm_types.h
+++ b/include/linux/mm_types.h
@@ -968,6 +968,11 @@ struct vm_area_struct {
unsigned int vm_lock_seq;
#endif
/*
+ * Low 32-bits of anonymous page offset.
+ * See vma_start_anon_pgoff() comment for details.
+ */
+ unsigned int __vm_anon_pgoff_lo;
+ /*
* A file's MAP_PRIVATE vma can be in both i_mmap tree and anon_vma
* list, after a COW of one of the file pages. A MAP_SHARED vma
* can only be in the i_mmap tree. An anonymous MAP_PRIVATE, stack
@@ -1042,6 +1047,13 @@ struct vm_area_struct {
struct lockdep_map vmlock_dep_map;
#endif
#endif
+#ifdef CONFIG_64BIT
+ /*
+ * High 32-bits of anonymous page offset.
+ * See vma_start_anon_pgoff() comment for details.
+ */
+ unsigned int __vm_anon_pgoff_hi;
+#endif
/*
* For areas with an address space and backing store,
* linkage into the address_space->i_mmap interval tree.
@@ -1706,20 +1718,20 @@ enum vm_fault_reason {
VM_FAULT_SIGSEGV | VM_FAULT_HWPOISON | \
VM_FAULT_HWPOISON_LARGE | VM_FAULT_FALLBACK)
-#define VM_FAULT_RESULT_TRACE \
- { VM_FAULT_OOM, "OOM" }, \
- { VM_FAULT_SIGBUS, "SIGBUS" }, \
- { VM_FAULT_MAJOR, "MAJOR" }, \
- { VM_FAULT_HWPOISON, "HWPOISON" }, \
- { VM_FAULT_HWPOISON_LARGE, "HWPOISON_LARGE" }, \
- { VM_FAULT_SIGSEGV, "SIGSEGV" }, \
- { VM_FAULT_NOPAGE, "NOPAGE" }, \
- { VM_FAULT_LOCKED, "LOCKED" }, \
- { VM_FAULT_RETRY, "RETRY" }, \
- { VM_FAULT_FALLBACK, "FALLBACK" }, \
- { VM_FAULT_DONE_COW, "DONE_COW" }, \
- { VM_FAULT_NEEDDSYNC, "NEEDDSYNC" }, \
- { VM_FAULT_COMPLETED, "COMPLETED" }
+#define VM_FAULT_RESULT_TRACE \
+ { (__force u32)VM_FAULT_OOM, "OOM" }, \
+ { (__force u32)VM_FAULT_SIGBUS, "SIGBUS" }, \
+ { (__force u32)VM_FAULT_MAJOR, "MAJOR" }, \
+ { (__force u32)VM_FAULT_HWPOISON, "HWPOISON" }, \
+ { (__force u32)VM_FAULT_HWPOISON_LARGE, "HWPOISON_LARGE" }, \
+ { (__force u32)VM_FAULT_SIGSEGV, "SIGSEGV" }, \
+ { (__force u32)VM_FAULT_NOPAGE, "NOPAGE" }, \
+ { (__force u32)VM_FAULT_LOCKED, "LOCKED" }, \
+ { (__force u32)VM_FAULT_RETRY, "RETRY" }, \
+ { (__force u32)VM_FAULT_FALLBACK, "FALLBACK" }, \
+ { (__force u32)VM_FAULT_DONE_COW, "DONE_COW" }, \
+ { (__force u32)VM_FAULT_NEEDDSYNC, "NEEDDSYNC" }, \
+ { (__force u32)VM_FAULT_COMPLETED, "COMPLETED" }
struct vm_special_mapping {
const char *name; /* The name, e.g. "[vdso]". */