diff options
Diffstat (limited to 'ipc/ipc_sysctl.c')
-rw-r--r-- | ipc/ipc_sysctl.c | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/ipc/ipc_sysctl.c b/ipc/ipc_sysctl.c index 00fba2bab87d..130dfece27ac 100644 --- a/ipc/ipc_sysctl.c +++ b/ipc/ipc_sysctl.c | |||
@@ -158,6 +158,9 @@ static int proc_ipcauto_dointvec_minmax(ctl_table *table, int write, | |||
158 | 158 | ||
159 | static int zero; | 159 | static int zero; |
160 | static int one = 1; | 160 | static int one = 1; |
161 | #ifdef CONFIG_CHECKPOINT_RESTORE | ||
162 | static int int_max = INT_MAX; | ||
163 | #endif | ||
161 | 164 | ||
162 | static struct ctl_table ipc_kern_table[] = { | 165 | static struct ctl_table ipc_kern_table[] = { |
163 | { | 166 | { |
@@ -227,6 +230,35 @@ static struct ctl_table ipc_kern_table[] = { | |||
227 | .extra1 = &zero, | 230 | .extra1 = &zero, |
228 | .extra2 = &one, | 231 | .extra2 = &one, |
229 | }, | 232 | }, |
233 | #ifdef CONFIG_CHECKPOINT_RESTORE | ||
234 | { | ||
235 | .procname = "sem_next_id", | ||
236 | .data = &init_ipc_ns.ids[IPC_SEM_IDS].next_id, | ||
237 | .maxlen = sizeof(init_ipc_ns.ids[IPC_SEM_IDS].next_id), | ||
238 | .mode = 0644, | ||
239 | .proc_handler = proc_ipc_dointvec_minmax, | ||
240 | .extra1 = &zero, | ||
241 | .extra2 = &int_max, | ||
242 | }, | ||
243 | { | ||
244 | .procname = "msg_next_id", | ||
245 | .data = &init_ipc_ns.ids[IPC_MSG_IDS].next_id, | ||
246 | .maxlen = sizeof(init_ipc_ns.ids[IPC_MSG_IDS].next_id), | ||
247 | .mode = 0644, | ||
248 | .proc_handler = proc_ipc_dointvec_minmax, | ||
249 | .extra1 = &zero, | ||
250 | .extra2 = &int_max, | ||
251 | }, | ||
252 | { | ||
253 | .procname = "shm_next_id", | ||
254 | .data = &init_ipc_ns.ids[IPC_SHM_IDS].next_id, | ||
255 | .maxlen = sizeof(init_ipc_ns.ids[IPC_SHM_IDS].next_id), | ||
256 | .mode = 0644, | ||
257 | .proc_handler = proc_ipc_dointvec_minmax, | ||
258 | .extra1 = &zero, | ||
259 | .extra2 = &int_max, | ||
260 | }, | ||
261 | #endif | ||
230 | {} | 262 | {} |
231 | }; | 263 | }; |
232 | 264 | ||