diff options
Diffstat (limited to 'include/linux/memfd.h')
| -rw-r--r-- | include/linux/memfd.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/include/linux/memfd.h b/include/linux/memfd.h index 4f1600413f91..cc74de3dbcfe 100644 --- a/include/linux/memfd.h +++ b/include/linux/memfd.h @@ -4,13 +4,33 @@ #include <linux/file.h> +#define MEMFD_ANON_NAME "[memfd]" + #ifdef CONFIG_MEMFD_CREATE -extern long memfd_fcntl(struct file *file, unsigned int cmd, unsigned long arg); +extern long memfd_fcntl(struct file *file, unsigned int cmd, unsigned int arg); +struct folio *memfd_alloc_folio(struct file *memfd, pgoff_t idx); +/* + * Check for any existing seals on mmap, return an error if access is denied due + * to sealing, or 0 otherwise. + * + * We also update VMA flags if appropriate by manipulating the VMA flags pointed + * to by vm_flags_ptr. + */ +int memfd_check_seals_mmap(struct file *file, vm_flags_t *vm_flags_ptr); #else -static inline long memfd_fcntl(struct file *f, unsigned int c, unsigned long a) +static inline long memfd_fcntl(struct file *f, unsigned int c, unsigned int a) { return -EINVAL; } +static inline struct folio *memfd_alloc_folio(struct file *memfd, pgoff_t idx) +{ + return ERR_PTR(-EINVAL); +} +static inline int memfd_check_seals_mmap(struct file *file, + vm_flags_t *vm_flags_ptr) +{ + return 0; +} #endif #endif /* __LINUX_MEMFD_H */ |
