/* 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 shmid_kernel /* private to the kernel */ { struct kern_ipc_perm shm_perm; struct file *shm_file; unsigned long shm_nattch; unsigned long shm_segsz; time64_t shm_atim; time64_t shm_dtim; time64_t shm_ctim; pid_t shm_cprid; pid_t shm_lprid; struct user_struct *mlock_user; /* The task created the shm object. NULL if the task is dead. */ struct task_struct *shm_creator; struct list_head shm_clist; /* list by creator */ } __randomize_layout; /* shm_mode upper byte flags */ #define SHM_DEST 01000 /* segment will be destroyed on last detach */ #define SHM_LOCKED 02000 /* segment will not be swapped */ #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; }Contributors
Person | Tokens | Prop | Commits | CommitProp |
Manfred Spraul | 26 | 83.87% | 1 | 33.33% |
Will Deacon | 4 | 12.90% | 1 | 33.33% |
Andrew Morton | 1 | 3.23% | 1 | 33.33% |
Total | 31 | 100.00% | 3 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Adam Litke | 13 | 86.67% | 1 | 50.00% |
Yaowei Bai | 2 | 13.33% | 1 | 50.00% |
Total | 15 | 100.00% | 2 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Vasiliy Kulikov | 11 | 100.00% | 1 | 100.00% |
Total | 11 | 100.00% | 1 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Jack Miller | 11 | 100.00% | 1 | 100.00% |
Total | 11 | 100.00% | 1 | 100.00% |
Person | Tokens | Prop | Commits | CommitProp |
Linus Torvalds (pre-git) | 44 | 19.38% | 6 | 27.27% |
Jack Miller | 41 | 18.06% | 1 | 4.55% |
Greg Kroah-Hartman | 36 | 15.86% | 2 | 9.09% |
Manfred Spraul | 34 | 14.98% | 1 | 4.55% |
Vasiliy Kulikov | 26 | 11.45% | 2 | 9.09% |
Adam Litke | 21 | 9.25% | 1 | 4.55% |
Will Deacon | 8 | 3.52% | 1 | 4.55% |
Rik Van Riel | 5 | 2.20% | 1 | 4.55% |
Deepa Dinamani | 3 | 1.32% | 1 | 4.55% |
Yaowei Bai | 3 | 1.32% | 1 | 4.55% |
Kirill A. Shutemov | 2 | 0.88% | 1 | 4.55% |
Andrew Morton | 1 | 0.44% | 1 | 4.55% |
Linus Torvalds | 1 | 0.44% | 1 | 4.55% |
David Howells | 1 | 0.44% | 1 | 4.55% |
Kees Cook | 1 | 0.44% | 1 | 4.55% |
Total | 227 | 100.00% | 22 | 100.00% |