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