1*53ee8cc1Swenshuai.xi #ifndef _ASM_GENERIC_RESOURCE_H 2*53ee8cc1Swenshuai.xi #define _ASM_GENERIC_RESOURCE_H 3*53ee8cc1Swenshuai.xi 4*53ee8cc1Swenshuai.xi /* 5*53ee8cc1Swenshuai.xi * Resource limit IDs 6*53ee8cc1Swenshuai.xi * 7*53ee8cc1Swenshuai.xi * ( Compatibility detail: there are architectures that have 8*53ee8cc1Swenshuai.xi * a different rlimit ID order in the 5-9 range and want 9*53ee8cc1Swenshuai.xi * to keep that order for binary compatibility. The reasons 10*53ee8cc1Swenshuai.xi * are historic and all new rlimits are identical across all 11*53ee8cc1Swenshuai.xi * arches. If an arch has such special order for some rlimits 12*53ee8cc1Swenshuai.xi * then it defines them prior including asm-generic/resource.h. ) 13*53ee8cc1Swenshuai.xi */ 14*53ee8cc1Swenshuai.xi 15*53ee8cc1Swenshuai.xi #define RLIMIT_CPU 0 /* CPU time in sec */ 16*53ee8cc1Swenshuai.xi #define RLIMIT_FSIZE 1 /* Maximum filesize */ 17*53ee8cc1Swenshuai.xi #define RLIMIT_DATA 2 /* max data size */ 18*53ee8cc1Swenshuai.xi #define RLIMIT_STACK 3 /* max stack size */ 19*53ee8cc1Swenshuai.xi #define RLIMIT_CORE 4 /* max core file size */ 20*53ee8cc1Swenshuai.xi 21*53ee8cc1Swenshuai.xi #ifndef RLIMIT_RSS 22*53ee8cc1Swenshuai.xi # define RLIMIT_RSS 5 /* max resident set size */ 23*53ee8cc1Swenshuai.xi #endif 24*53ee8cc1Swenshuai.xi 25*53ee8cc1Swenshuai.xi #ifndef RLIMIT_NPROC 26*53ee8cc1Swenshuai.xi # define RLIMIT_NPROC 6 /* max number of processes */ 27*53ee8cc1Swenshuai.xi #endif 28*53ee8cc1Swenshuai.xi 29*53ee8cc1Swenshuai.xi #ifndef RLIMIT_NOFILE 30*53ee8cc1Swenshuai.xi # define RLIMIT_NOFILE 7 /* max number of open files */ 31*53ee8cc1Swenshuai.xi #endif 32*53ee8cc1Swenshuai.xi 33*53ee8cc1Swenshuai.xi #ifndef RLIMIT_MEMLOCK 34*53ee8cc1Swenshuai.xi # define RLIMIT_MEMLOCK 8 /* max locked-in-memory address space */ 35*53ee8cc1Swenshuai.xi #endif 36*53ee8cc1Swenshuai.xi 37*53ee8cc1Swenshuai.xi #ifndef RLIMIT_AS 38*53ee8cc1Swenshuai.xi # define RLIMIT_AS 9 /* address space limit */ 39*53ee8cc1Swenshuai.xi #endif 40*53ee8cc1Swenshuai.xi 41*53ee8cc1Swenshuai.xi #define RLIMIT_LOCKS 10 /* maximum file locks held */ 42*53ee8cc1Swenshuai.xi #define RLIMIT_SIGPENDING 11 /* max number of pending signals */ 43*53ee8cc1Swenshuai.xi #define RLIMIT_MSGQUEUE 12 /* maximum bytes in POSIX mqueues */ 44*53ee8cc1Swenshuai.xi #define RLIMIT_NICE 13 /* max nice prio allowed to raise to 45*53ee8cc1Swenshuai.xi 0-39 for nice level 19 .. -20 */ 46*53ee8cc1Swenshuai.xi #define RLIMIT_RTPRIO 14 /* maximum realtime priority */ 47*53ee8cc1Swenshuai.xi #define RLIMIT_RTTIME 15 /* timeout for RT tasks in us */ 48*53ee8cc1Swenshuai.xi #define RLIM_NLIMITS 16 49*53ee8cc1Swenshuai.xi 50*53ee8cc1Swenshuai.xi /* 51*53ee8cc1Swenshuai.xi * SuS says limits have to be unsigned. 52*53ee8cc1Swenshuai.xi * Which makes a ton more sense anyway. 53*53ee8cc1Swenshuai.xi * 54*53ee8cc1Swenshuai.xi * Some architectures override this (for compatibility reasons): 55*53ee8cc1Swenshuai.xi */ 56*53ee8cc1Swenshuai.xi #ifndef RLIM_INFINITY 57*53ee8cc1Swenshuai.xi # define RLIM_INFINITY (~0UL) 58*53ee8cc1Swenshuai.xi #endif 59*53ee8cc1Swenshuai.xi 60*53ee8cc1Swenshuai.xi /* 61*53ee8cc1Swenshuai.xi * RLIMIT_STACK default maximum - some architectures override it: 62*53ee8cc1Swenshuai.xi */ 63*53ee8cc1Swenshuai.xi #ifndef _STK_LIM_MAX 64*53ee8cc1Swenshuai.xi # define _STK_LIM_MAX RLIM_INFINITY 65*53ee8cc1Swenshuai.xi #endif 66*53ee8cc1Swenshuai.xi 67*53ee8cc1Swenshuai.xi 68*53ee8cc1Swenshuai.xi #endif 69