diff options
Diffstat (limited to 'include/linux/shm.h')
-rw-r--r-- | include/linux/shm.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/shm.h b/include/linux/shm.h index eca6235a46c0..92808b86703b 100644 --- a/include/linux/shm.h +++ b/include/linux/shm.h | |||
@@ -95,6 +95,9 @@ struct shmid_kernel /* private to the kernel */ | |||
95 | pid_t shm_cprid; | 95 | pid_t shm_cprid; |
96 | pid_t shm_lprid; | 96 | pid_t shm_lprid; |
97 | struct user_struct *mlock_user; | 97 | struct user_struct *mlock_user; |
98 | |||
99 | /* The task created the shm object. NULL if the task is dead. */ | ||
100 | struct task_struct *shm_creator; | ||
98 | }; | 101 | }; |
99 | 102 | ||
100 | /* shm_mode upper byte flags */ | 103 | /* shm_mode upper byte flags */ |
@@ -106,6 +109,7 @@ struct shmid_kernel /* private to the kernel */ | |||
106 | #ifdef CONFIG_SYSVIPC | 109 | #ifdef CONFIG_SYSVIPC |
107 | long do_shmat(int shmid, char __user *shmaddr, int shmflg, unsigned long *addr); | 110 | long do_shmat(int shmid, char __user *shmaddr, int shmflg, unsigned long *addr); |
108 | extern int is_file_shm_hugepages(struct file *file); | 111 | extern int is_file_shm_hugepages(struct file *file); |
112 | extern void exit_shm(struct task_struct *task); | ||
109 | #else | 113 | #else |
110 | static inline long do_shmat(int shmid, char __user *shmaddr, | 114 | static inline long do_shmat(int shmid, char __user *shmaddr, |
111 | int shmflg, unsigned long *addr) | 115 | int shmflg, unsigned long *addr) |
@@ -116,6 +120,9 @@ static inline int is_file_shm_hugepages(struct file *file) | |||
116 | { | 120 | { |
117 | return 0; | 121 | return 0; |
118 | } | 122 | } |
123 | static inline void exit_shm(struct task_struct *task) | ||
124 | { | ||
125 | } | ||
119 | #endif | 126 | #endif |
120 | 127 | ||
121 | #endif /* __KERNEL__ */ | 128 | #endif /* __KERNEL__ */ |