Viewing file: shm.h (968 B) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* SPDX-License-Identifier: GPL-2.0 */ #ifndef _LINUX_SHM_H_ #define _LINUX_SHM_H_
#include <linux/list.h> #include <asm/page.h> #include <uapi/linux/shm.h> #include <asm/shmparam.h>
struct file;
#ifdef CONFIG_SYSVIPC struct sysv_shm { struct list_head shm_clist; };
long do_shmat(int shmid, char __user *shmaddr, int shmflg, unsigned long *addr, unsigned long shmlba); bool is_file_shm_hugepages(struct file *file); void exit_shm(struct task_struct *task); #define shm_init_task(task) INIT_LIST_HEAD(&(task)->sysvshm.shm_clist) #else struct sysv_shm { /* empty */ };
static inline long do_shmat(int shmid, char __user *shmaddr, int shmflg, unsigned long *addr, unsigned long shmlba) { return -ENOSYS; } static inline bool is_file_shm_hugepages(struct file *file) { return false; } static inline void exit_shm(struct task_struct *task) { } static inline void shm_init_task(struct task_struct *task) { } #endif
#endif /* _LINUX_SHM_H_ */
|