blob: e646bcdf26142fd55998efd116089b11346deb3a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _LINUX_THREADS_H
2#define _LINUX_THREADS_H
3
4#include <linux/config.h>
5
6/*
7 * The default limit for the nr of threads is now in
8 * /proc/sys/kernel/threads-max.
9 */
10
11/*
12 * Maximum supported processors that can run under SMP. This value is
13 * set via configure setting. The maximum is equal to the size of the
14 * bitmasks used on that platform, i.e. 32 or 64. Setting this smaller
15 * saves quite a bit of memory.
16 */
17#ifdef CONFIG_SMP
18#define NR_CPUS CONFIG_NR_CPUS
19#else
20#define NR_CPUS 1
21#endif
22
23#define MIN_THREADS_LEFT_FOR_ROOT 4
24
25/*
26 * This controls the default maximum pid allocated to a process
27 */
28#define PID_MAX_DEFAULT (CONFIG_BASE_SMALL ? 0x1000 : 0x8000)
29
30/*
Ingo Molnar0771dfe2006-03-27 01:16:22 -080031 * A maximum of 4 million PIDs should be enough for a while.
32 * [NOTE: PID/TIDs are limited to 2^29 ~= 500+ million, see futex.h.]
Linus Torvalds1da177e2005-04-16 15:20:36 -070033 */
34#define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \
35 (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT))
36
37#endif