| author | |
| committer | |
| log | 353c59e6d5f32203ade301c609e20c1fa954f73d |
| tree | 044f0adaea9e95fb937f58c4f0161c4de490e53b |
| parent | 796687f1562bf0c9a73633b3fd828d25b7a11fac |
On MIPS and SPARC the RLIMIT kinds have different numbers than the other
architectures.3 files changed, 166 insertions(+), 43 deletions(-)
lib/std/os/linux.zig+46-43| ... | @@ -4197,65 +4197,68 @@ pub const ifreq = extern struct { | ... | @@ -4197,65 +4197,68 @@ pub const ifreq = extern struct { |
| 4197 | }; | 4197 | }; |
| 4198 | 4198 | ||
| 4199 | // doc comments copied from musl | 4199 | // doc comments copied from musl |
| 4200 | pub const rlimit_resource = enum(c_int) { | 4200 | pub const rlimit_resource = if (native_arch.isMIPS() or native_arch.isSPARC()) |
| 4201 | /// Per-process CPU limit, in seconds. | 4201 | arch_bits.rlimit_resource |
| 4202 | CPU, | 4202 | else |
| 4203 | enum(c_int) { | ||
| 4204 | /// Per-process CPU limit, in seconds. | ||
| 4205 | CPU, | ||
| 4203 | 4206 | ||
| 4204 | /// Largest file that can be created, in bytes. | 4207 | /// Largest file that can be created, in bytes. |
| 4205 | FSIZE, | 4208 | FSIZE, |
| 4206 | 4209 | ||
| 4207 | /// Maximum size of data segment, in bytes. | 4210 | /// Maximum size of data segment, in bytes. |
| 4208 | DATA, | 4211 | DATA, |
| 4209 | 4212 | ||
| 4210 | /// Maximum size of stack segment, in bytes. | 4213 | /// Maximum size of stack segment, in bytes. |
| 4211 | STACK, | 4214 | STACK, |
| 4212 | 4215 | ||
| 4213 | /// Largest core file that can be created, in bytes. | 4216 | /// Largest core file that can be created, in bytes. |
| 4214 | CORE, | 4217 | CORE, |
| 4215 | 4218 | ||
| 4216 | /// Largest resident set size, in bytes. | 4219 | /// Largest resident set size, in bytes. |
| 4217 | /// This affects swapping; processes that are exceeding their | 4220 | /// This affects swapping; processes that are exceeding their |
| 4218 | /// resident set size will be more likely to have physical memory | 4221 | /// resident set size will be more likely to have physical memory |
| 4219 | /// taken from them. | 4222 | /// taken from them. |
| 4220 | RSS, | 4223 | RSS, |
| 4221 | 4224 | ||
| 4222 | /// Number of processes. | 4225 | /// Number of processes. |
| 4223 | NPROC, | 4226 | NPROC, |
| 4224 | 4227 | ||
| 4225 | /// Number of open files. | 4228 | /// Number of open files. |
| 4226 | NOFILE, | 4229 | NOFILE, |
| 4227 | 4230 | ||
| 4228 | /// Locked-in-memory address space. | 4231 | /// Locked-in-memory address space. |
| 4229 | MEMLOCK, | 4232 | MEMLOCK, |
| 4230 | 4233 | ||
| 4231 | /// Address space limit. | 4234 | /// Address space limit. |
| 4232 | AS, | 4235 | AS, |
| 4233 | 4236 | ||
| 4234 | /// Maximum number of file locks. | 4237 | /// Maximum number of file locks. |
| 4235 | LOCKS, | 4238 | LOCKS, |
| 4236 | 4239 | ||
| 4237 | /// Maximum number of pending signals. | 4240 | /// Maximum number of pending signals. |
| 4238 | SIGPENDING, | 4241 | SIGPENDING, |
| 4239 | 4242 | ||
| 4240 | /// Maximum bytes in POSIX message queues. | 4243 | /// Maximum bytes in POSIX message queues. |
| 4241 | MSGQUEUE, | 4244 | MSGQUEUE, |
| 4242 | 4245 | ||
| 4243 | /// Maximum nice priority allowed to raise to. | 4246 | /// Maximum nice priority allowed to raise to. |
| 4244 | /// Nice levels 19 .. -20 correspond to 0 .. 39 | 4247 | /// Nice levels 19 .. -20 correspond to 0 .. 39 |
| 4245 | /// values of this resource limit. | 4248 | /// values of this resource limit. |
| 4246 | NICE, | 4249 | NICE, |
| 4247 | 4250 | ||
| 4248 | /// Maximum realtime priority allowed for non-priviledged | 4251 | /// Maximum realtime priority allowed for non-priviledged |
| 4249 | /// processes. | 4252 | /// processes. |
| 4250 | RTPRIO, | 4253 | RTPRIO, |
| 4251 | 4254 | ||
| 4252 | /// Maximum CPU time in µs that a process scheduled under a real-time | 4255 | /// Maximum CPU time in µs that a process scheduled under a real-time |
| 4253 | /// scheduling policy may consume without making a blocking system | 4256 | /// scheduling policy may consume without making a blocking system |
| 4254 | /// call before being forcibly descheduled. | 4257 | /// call before being forcibly descheduled. |
| 4255 | RTTIME, | 4258 | RTTIME, |
| 4256 | 4259 | ||
| 4257 | _, | 4260 | _, |
| 4258 | }; | 4261 | }; |
| 4259 | 4262 | ||
| 4260 | pub const rlim_t = u64; | 4263 | pub const rlim_t = u64; |
| 4261 | 4264 |
lib/std/os/linux/mips.zig+60| ... | @@ -769,3 +769,63 @@ pub const timezone = extern struct { | ... | @@ -769,3 +769,63 @@ pub const timezone = extern struct { |
| 769 | }; | 769 | }; |
| 770 | 770 | ||
| 771 | pub const Elf_Symndx = u32; | 771 | pub const Elf_Symndx = u32; |
| 772 | |||
| 773 | pub const rlimit_resource = enum(c_int) { | ||
| 774 | /// Per-process CPU limit, in seconds. | ||
| 775 | CPU, | ||
| 776 | |||
| 777 | /// Largest file that can be created, in bytes. | ||
| 778 | FSIZE, | ||
| 779 | |||
| 780 | /// Maximum size of data segment, in bytes. | ||
| 781 | DATA, | ||
| 782 | |||
| 783 | /// Maximum size of stack segment, in bytes. | ||
| 784 | STACK, | ||
| 785 | |||
| 786 | /// Largest core file that can be created, in bytes. | ||
| 787 | CORE, | ||
| 788 | |||
| 789 | /// Number of open files. | ||
| 790 | NOFILE, | ||
| 791 | |||
| 792 | /// Address space limit. | ||
| 793 | AS, | ||
| 794 | |||
| 795 | /// Largest resident set size, in bytes. | ||
| 796 | /// This affects swapping; processes that are exceeding their | ||
| 797 | /// resident set size will be more likely to have physical memory | ||
| 798 | /// taken from them. | ||
| 799 | RSS, | ||
| 800 | |||
| 801 | /// Number of processes. | ||
| 802 | NPROC, | ||
| 803 | |||
| 804 | /// Locked-in-memory address space. | ||
| 805 | MEMLOCK, | ||
| 806 | |||
| 807 | /// Maximum number of file locks. | ||
| 808 | LOCKS, | ||
| 809 | |||
| 810 | /// Maximum number of pending signals. | ||
| 811 | SIGPENDING, | ||
| 812 | |||
| 813 | /// Maximum bytes in POSIX message queues. | ||
| 814 | MSGQUEUE, | ||
| 815 | |||
| 816 | /// Maximum nice priority allowed to raise to. | ||
| 817 | /// Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 818 | /// values of this resource limit. | ||
| 819 | NICE, | ||
| 820 | |||
| 821 | /// Maximum realtime priority allowed for non-priviledged | ||
| 822 | /// processes. | ||
| 823 | RTPRIO, | ||
| 824 | |||
| 825 | /// Maximum CPU time in µs that a process scheduled under a real-time | ||
| 826 | /// scheduling policy may consume without making a blocking system | ||
| 827 | /// call before being forcibly descheduled. | ||
| 828 | RTTIME, | ||
| 829 | |||
| 830 | _, | ||
| 831 | }; |
lib/std/os/linux/sparc64.zig+60| ... | @@ -828,3 +828,63 @@ pub const ucontext_t = extern struct { | ... | @@ -828,3 +828,63 @@ pub const ucontext_t = extern struct { |
| 828 | stack: stack_t, | 828 | stack: stack_t, |
| 829 | sigmask: sigset_t, | 829 | sigmask: sigset_t, |
| 830 | }; | 830 | }; |
| 831 | |||
| 832 | pub const rlimit_resource = enum(c_int) { | ||
| 833 | /// Per-process CPU limit, in seconds. | ||
| 834 | CPU, | ||
| 835 | |||
| 836 | /// Largest file that can be created, in bytes. | ||
| 837 | FSIZE, | ||
| 838 | |||
| 839 | /// Maximum size of data segment, in bytes. | ||
| 840 | DATA, | ||
| 841 | |||
| 842 | /// Maximum size of stack segment, in bytes. | ||
| 843 | STACK, | ||
| 844 | |||
| 845 | /// Largest core file that can be created, in bytes. | ||
| 846 | CORE, | ||
| 847 | |||
| 848 | /// Largest resident set size, in bytes. | ||
| 849 | /// This affects swapping; processes that are exceeding their | ||
| 850 | /// resident set size will be more likely to have physical memory | ||
| 851 | /// taken from them. | ||
| 852 | RSS, | ||
| 853 | |||
| 854 | /// Number of open files. | ||
| 855 | NOFILE, | ||
| 856 | |||
| 857 | /// Number of processes. | ||
| 858 | NPROC, | ||
| 859 | |||
| 860 | /// Locked-in-memory address space. | ||
| 861 | MEMLOCK, | ||
| 862 | |||
| 863 | /// Address space limit. | ||
| 864 | AS, | ||
| 865 | |||
| 866 | /// Maximum number of file locks. | ||
| 867 | LOCKS, | ||
| 868 | |||
| 869 | /// Maximum number of pending signals. | ||
| 870 | SIGPENDING, | ||
| 871 | |||
| 872 | /// Maximum bytes in POSIX message queues. | ||
| 873 | MSGQUEUE, | ||
| 874 | |||
| 875 | /// Maximum nice priority allowed to raise to. | ||
| 876 | /// Nice levels 19 .. -20 correspond to 0 .. 39 | ||
| 877 | /// values of this resource limit. | ||
| 878 | NICE, | ||
| 879 | |||
| 880 | /// Maximum realtime priority allowed for non-priviledged | ||
| 881 | /// processes. | ||
| 882 | RTPRIO, | ||
| 883 | |||
| 884 | /// Maximum CPU time in µs that a process scheduled under a real-time | ||
| 885 | /// scheduling policy may consume without making a blocking system | ||
| 886 | /// call before being forcibly descheduled. | ||
| 887 | RTTIME, | ||
| 888 | |||
| 889 | _, | ||
| 890 | }; |