0001
0002 #ifndef _LINUX_SCHED_COREDUMP_H
0003 #define _LINUX_SCHED_COREDUMP_H
0004
0005 #include <linux/mm_types.h>
0006
0007 #define SUID_DUMP_DISABLE 0
0008 #define SUID_DUMP_USER 1
0009 #define SUID_DUMP_ROOT 2
0010
0011
0012
0013
0014 #define MMF_DUMPABLE_BITS 2
0015 #define MMF_DUMPABLE_MASK ((1 << MMF_DUMPABLE_BITS) - 1)
0016
0017 extern void set_dumpable(struct mm_struct *mm, int value);
0018
0019
0020
0021
0022
0023
0024 static inline int __get_dumpable(unsigned long mm_flags)
0025 {
0026 return mm_flags & MMF_DUMPABLE_MASK;
0027 }
0028
0029 static inline int get_dumpable(struct mm_struct *mm)
0030 {
0031 return __get_dumpable(mm->flags);
0032 }
0033
0034
0035 #define MMF_DUMP_ANON_PRIVATE 2
0036 #define MMF_DUMP_ANON_SHARED 3
0037 #define MMF_DUMP_MAPPED_PRIVATE 4
0038 #define MMF_DUMP_MAPPED_SHARED 5
0039 #define MMF_DUMP_ELF_HEADERS 6
0040 #define MMF_DUMP_HUGETLB_PRIVATE 7
0041 #define MMF_DUMP_HUGETLB_SHARED 8
0042 #define MMF_DUMP_DAX_PRIVATE 9
0043 #define MMF_DUMP_DAX_SHARED 10
0044
0045 #define MMF_DUMP_FILTER_SHIFT MMF_DUMPABLE_BITS
0046 #define MMF_DUMP_FILTER_BITS 9
0047 #define MMF_DUMP_FILTER_MASK \
0048 (((1 << MMF_DUMP_FILTER_BITS) - 1) << MMF_DUMP_FILTER_SHIFT)
0049 #define MMF_DUMP_FILTER_DEFAULT \
0050 ((1 << MMF_DUMP_ANON_PRIVATE) | (1 << MMF_DUMP_ANON_SHARED) |\
0051 (1 << MMF_DUMP_HUGETLB_PRIVATE) | MMF_DUMP_MASK_DEFAULT_ELF)
0052
0053 #ifdef CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS
0054 # define MMF_DUMP_MASK_DEFAULT_ELF (1 << MMF_DUMP_ELF_HEADERS)
0055 #else
0056 # define MMF_DUMP_MASK_DEFAULT_ELF 0
0057 #endif
0058
0059 #define MMF_VM_MERGEABLE 16
0060 #define MMF_VM_HUGEPAGE 17
0061
0062
0063
0064
0065
0066
0067
0068 #define MMF_HAS_UPROBES 19
0069 #define MMF_RECALC_UPROBES 20
0070 #define MMF_OOM_SKIP 21
0071 #define MMF_UNSTABLE 22
0072 #define MMF_HUGE_ZERO_PAGE 23
0073 #define MMF_DISABLE_THP 24
0074 #define MMF_OOM_VICTIM 25
0075 #define MMF_OOM_REAP_QUEUED 26
0076 #define MMF_MULTIPROCESS 27
0077
0078
0079
0080
0081
0082
0083
0084 #define MMF_HAS_PINNED 28
0085 #define MMF_DISABLE_THP_MASK (1 << MMF_DISABLE_THP)
0086
0087 #define MMF_INIT_MASK (MMF_DUMPABLE_MASK | MMF_DUMP_FILTER_MASK |\
0088 MMF_DISABLE_THP_MASK)
0089
0090 #endif