@@ -38,100 +38,184 @@ s! {
3838 }
3939
4040 pub struct kinfo_proc {
41+ /// Size of this structure.
4142 pub ki_structsize: :: c_int,
43+ /// Reserved: layout identifier.
4244 pub ki_layout: :: c_int,
45+ /// Address of command arguments.
4346 pub ki_args: * mut :: pargs,
4447 // This is normally "struct proc".
48+ /// Address of proc.
4549 pub ki_paddr: * mut :: c_void,
4650 // This is normally "struct user".
51+ /// Kernel virtual address of u-area.
4752 pub ki_addr: * mut :: c_void,
4853 // This is normally "struct vnode".
54+ /// Pointer to trace file.
4955 pub ki_tracep: * mut :: c_void,
5056 // This is normally "struct vnode".
57+ /// Pointer to executable file.
5158 pub ki_textvp: * mut :: c_void,
5259 // This is normally "struct filedesc".
60+ /// Pointer to open file info.
5361 pub ki_fd: * mut :: c_void,
5462 // This is normally "struct vmspace".
63+ /// Pointer to kernel vmspace struct.
5564 pub ki_vmspace: * mut :: c_void,
65+ /// Sleep address.
5666 pub ki_wchan: * mut :: c_void,
67+ /// Process identifier.
5768 pub ki_pid: :: pid_t,
69+ /// Parent process ID.
5870 pub ki_ppid: :: pid_t,
71+ /// Process group ID.
5972 pub ki_pgid: :: pid_t,
73+ /// tty process group ID.
6074 pub ki_tpgid: :: pid_t,
75+ /// Process session ID.
6176 pub ki_sid: :: pid_t,
77+ /// Terminal session ID.
6278 pub ki_tsid: :: pid_t,
79+ /// Job control counter.
6380 pub ki_jobc: :: c_short,
81+ /// Unused (just here for alignment).
6482 pub ki_spare_short1: :: c_short,
83+ /// Controlling tty dev.
6584 pub ki_tdev_freebsd11: u32 ,
85+ /// Signals arrived but not delivered.
6686 pub ki_siglist: :: sigset_t,
87+ /// Current signal mask.
6788 pub ki_sigmask: :: sigset_t,
89+ /// Signals being ignored.
6890 pub ki_sigignore: :: sigset_t,
91+ /// Signals being caught by user.
6992 pub ki_sigcatch: :: sigset_t,
93+ /// Effective user ID.
7094 pub ki_uid: :: uid_t,
95+ /// Real user ID.
7196 pub ki_ruid: :: uid_t,
97+ /// Saved effective user ID.
7298 pub ki_svuid: :: uid_t,
99+ /// Real group ID.
73100 pub ki_rgid: :: gid_t,
101+ /// Saved effective group ID.
74102 pub ki_svgid: :: gid_t,
103+ /// Number of groups.
75104 pub ki_ngroups: :: c_short,
105+ /// Unused (just here for alignment).
76106 pub ki_spare_short2: :: c_short,
107+ /// Groups.
77108 pub ki_groups: [ :: gid_t; :: KI_NGROUPS ] ,
109+ /// Virtual size.
78110 pub ki_size: :: vm_size_t,
111+ /// Current resident set size in pages.
79112 pub ki_rssize: :: segsz_t,
113+ /// Resident set size before last swap.
80114 pub ki_swrss: :: segsz_t,
115+ /// Text size (pages) XXX.
81116 pub ki_tsize: :: segsz_t,
117+ /// Data size (pages) XXX.
82118 pub ki_dsize: :: segsz_t,
119+ /// Stack size (pages).
83120 pub ki_ssize: :: segsz_t,
121+ /// Exit status for wait & stop signal.
84122 pub ki_xstat: :: u_short,
123+ /// Accounting flags.
85124 pub ki_acflag: :: u_short,
125+ /// %cpu for process during `ki_swtime`.
86126 pub ki_pctcpu: :: fixpt_t,
127+ /// Time averaged value of `ki_cpticks`.
87128 pub ki_estcpu: :: u_int,
129+ /// Time since last blocked.
88130 pub ki_slptime: :: u_int,
131+ /// Time swapped in or out.
89132 pub ki_swtime: :: u_int,
133+ /// Number of copy-on-write faults.
90134 pub ki_cow: :: u_int,
135+ /// Real time in microsec.
91136 pub ki_runtime: u64 ,
137+ /// Starting time.
92138 pub ki_start: :: timeval,
139+ /// Time used by process children.
93140 pub ki_childtime: :: timeval,
141+ /// P_* flags.
94142 pub ki_flag: :: c_long,
143+ /// KI_* flags (below).
95144 pub ki_kiflag: :: c_long,
145+ /// Kernel trace points.
96146 pub ki_traceflag: :: c_int,
147+ /// S* process status.
97148 pub ki_stat: :: c_char,
149+ /// Process "nice" value.
98150 pub ki_nice: i8 , // signed char
151+ /// Process lock (prevent swap) count.
99152 pub ki_lock: :: c_char,
153+ /// Run queue index.
100154 pub ki_rqindex: :: c_char,
155+ /// Which cpu we are on.
101156 pub ki_oncpu_old: :: c_uchar,
157+ /// Last cpu we were on.
102158 pub ki_lastcpu_old: :: c_uchar,
159+ /// Thread name.
103160 pub ki_tdname: [ :: c_char; :: TDNAMLEN + 1 ] ,
161+ /// Wchan message.
104162 pub ki_wmesg: [ :: c_char; :: WMESGLEN + 1 ] ,
163+ /// Setlogin name.
105164 pub ki_login: [ :: c_char; :: LOGNAMELEN + 1 ] ,
165+ /// Lock name.
106166 pub ki_lockname: [ :: c_char; :: LOCKNAMELEN + 1 ] ,
167+ /// Command name.
107168 pub ki_comm: [ :: c_char; :: COMMLEN + 1 ] ,
169+ /// Emulation name.
108170 pub ki_emul: [ :: c_char; :: KI_EMULNAMELEN + 1 ] ,
171+ /// Login class.
109172 pub ki_loginclass: [ :: c_char; :: LOGINCLASSLEN + 1 ] ,
173+ /// More thread name.
110174 pub ki_moretdname: [ :: c_char; :: MAXCOMLEN - :: TDNAMLEN + 1 ] ,
175+ /// Spare string space.
111176 pub ki_sparestrings: [ [ :: c_char; 23 ] ; 2 ] , // little hack to allow PartialEq
177+ /// Spare room for growth.
112178 pub ki_spareints: [ :: c_int; :: KI_NSPARE_INT ] ,
179+ /// Controlling tty dev.
113180 pub ki_tdev: :: dev_t,
181+ /// Which cpu we are on.
114182 pub ki_oncpu: :: c_int,
183+ /// Last cpu we were on.
115184 pub ki_lastcpu: :: c_int,
185+ /// PID of tracing process.
116186 pub ki_tracer: :: c_int,
187+ /// P2_* flags.
117188 pub ki_flag2: :: c_int,
189+ /// Default FIB number.
118190 pub ki_fibnum: :: c_int,
191+ /// Credential flags.
119192 pub ki_cr_flags: :: u_int,
193+ /// Process jail ID.
120194 pub ki_jid: :: c_int,
195+ /// Number of threads in total.
121196 pub ki_numthreads: :: c_int,
197+ // Thread ID.
122198 pub ki_tid: :: lwpid_t,
199+ /// Process priority.
123200 pub ki_pri: :: priority,
201+ /// Process rusage statistics.
124202 pub ki_rusage: :: rusage,
203+ /// rusage of children processes.
125204 pub ki_rusage_ch: :: rusage,
126205 // This is normally "struct pcb".
206+ /// Kernel virtual addr of pcb.
127207 pub ki_pcb: * mut :: c_void,
208+ /// Kernel virtual addr of stack.
128209 pub ki_kstack: * mut :: c_void,
210+ /// User convenience pointer.
129211 pub ki_udata: * mut :: c_void,
130212 // This is normally "struct thread".
131213 pub ki_tdaddr: * mut :: c_void,
132214 pub ki_spareptrs: [ * mut :: c_void; :: KI_NSPARE_PTR ] ,
133215 pub ki_sparelongs: [ :: c_long; :: KI_NSPARE_LONG ] ,
216+ /// PS_* flags.
134217 pub ki_sflag: :: c_long,
218+ /// kthread flag.
135219 pub ki_tdflags: :: c_long,
136220 }
137221}
0 commit comments