@@ -487,6 +487,134 @@ s! {
487487 af_arg: [ [ :: c_char; 10 ] ; 24 ] ,
488488 }
489489
490+ pub struct ki_sigset_t {
491+ pub __bits: [ u32 ; 4 ] ,
492+ }
493+
494+ pub struct kinfo_proc2 {
495+ pub p_forw: u64 ,
496+ pub p_back: u64 ,
497+ pub p_paddr: u64 ,
498+ pub p_addr: u64 ,
499+ pub p_fd: u64 ,
500+ pub p_cwdi: u64 ,
501+ pub p_stats: u64 ,
502+ pub p_limit: u64 ,
503+ pub p_vmspace: u64 ,
504+ pub p_sigacts: u64 ,
505+ pub p_sess: u64 ,
506+ pub p_tsess: u64 ,
507+ pub p_ru: u64 ,
508+ pub p_eflag: i32 ,
509+ pub p_exitsig: i32 ,
510+ pub p_flag: i32 ,
511+ pub p_pid: i32 ,
512+ pub p_ppid: i32 ,
513+ pub p_sid: i32 ,
514+ pub p__pgid: i32 ,
515+ pub p_tpgid: i32 ,
516+ pub p_uid: u32 ,
517+ pub p_ruid: u32 ,
518+ pub p_gid: u32 ,
519+ pub p_rgid: u32 ,
520+ pub p_groups: [ u32 ; KI_NGROUPS as usize ] ,
521+ pub p_ngroups: i16 ,
522+ pub p_jobc: i16 ,
523+ pub p_tdev: u32 ,
524+ pub p_estcpu: u32 ,
525+ pub p_rtime_sec: u32 ,
526+ pub p_rtime_usec: u32 ,
527+ pub p_cpticks: i32 ,
528+ pub p_pctcpu: u32 ,
529+ pub p_swtime: u32 ,
530+ pub p_slptime: u32 ,
531+ pub p_schedflags: i32 ,
532+ pub p_uticks: u64 ,
533+ pub p_sticks: u64 ,
534+ pub p_iticks: u64 ,
535+ pub p_tracep: u64 ,
536+ pub p_traceflag: i32 ,
537+ pub p_holdcnt: i32 ,
538+ pub p_siglist: ki_sigset_t,
539+ pub p_sigmask: ki_sigset_t,
540+ pub p_sigignore: ki_sigset_t,
541+ pub p_sigcatch: ki_sigset_t,
542+ pub p_stat: i8 ,
543+ pub p_priority: u8 ,
544+ pub p_usrpri: u8 ,
545+ pub p_nice: u8 ,
546+ pub p_xstat: u16 ,
547+ pub p_acflag: u16 ,
548+ pub p_comm: [ :: c_char; KI_MAXCOMLEN as usize ] ,
549+ pub p_wmesg: [ :: c_char; KI_WMESGLEN as usize ] ,
550+ pub p_wchan: u64 ,
551+ pub p_login: [ :: c_char; KI_MAXLOGNAME as usize ] ,
552+ pub p_vm_rssize: i32 ,
553+ pub p_vm_tsize: i32 ,
554+ pub p_vm_dsize: i32 ,
555+ pub p_vm_ssize: i32 ,
556+ pub p_uvalid: i64 ,
557+ pub p_ustart_sec: u32 ,
558+ pub p_ustart_usec: u32 ,
559+ pub p_uutime_sec: u32 ,
560+ pub p_uutime_usec: u32 ,
561+ pub p_ustime_sec: u32 ,
562+ pub p_ustime_usec: u32 ,
563+ pub p_uru_maxrss: u64 ,
564+ pub p_uru_ixrss: u64 ,
565+ pub p_uru_idrss: u64 ,
566+ pub p_uru_isrss: u64 ,
567+ pub p_uru_minflt: u64 ,
568+ pub p_uru_majflt: u64 ,
569+ pub p_uru_nswap: u64 ,
570+ pub p_uru_inblock: u64 ,
571+ pub p_uru_oublock: u64 ,
572+ pub p_uru_msgsnd: u64 ,
573+ pub p_uru_msgrcv: u64 ,
574+ pub p_uru_nsignals: u64 ,
575+ pub p_uru_nvcsw: u64 ,
576+ pub p_uru_nivcsw: u64 ,
577+ pub p_uctime_sec: u32 ,
578+ pub p_uctime_usec: u32 ,
579+ pub p_cpuid: u64 ,
580+ pub p_realflag: u64 ,
581+ pub p_nlwps: u64 ,
582+ pub p_nrlwps: u64 ,
583+ pub p_realstat: u64 ,
584+ pub p_svuid: u32 ,
585+ pub p_svgid: u32 ,
586+ pub p_ename: [ :: c_char; KI_MAXEMULLEN as usize ] ,
587+ pub p_vm_vsize: i64 ,
588+ pub p_vm_msize: i64 ,
589+ }
590+
591+ pub struct kinfo_lwp {
592+ pub l_forw: u64 ,
593+ pub l_back: u64 ,
594+ pub l_laddr: u64 ,
595+ pub l_addr: u64 ,
596+ pub l_lid: i32 ,
597+ pub l_flag: i32 ,
598+ pub l_swtime: u32 ,
599+ pub l_slptime: u32 ,
600+ pub l_schedflags: i32 ,
601+ pub l_holdcnt: i32 ,
602+ pub l_priority: u8 ,
603+ pub l_usrpri: u8 ,
604+ pub l_stat: i8 ,
605+ l_pad1: i8 ,
606+ l_pad2: i32 ,
607+ pub l_wmesg: [ :: c_char; KI_WMESGLEN as usize ] ,
608+ pub l_wchan: u64 ,
609+ pub l_cpuid: u64 ,
610+ pub l_rtime_sec: u32 ,
611+ pub l_rtime_usec: u32 ,
612+ pub l_cpticks: u32 ,
613+ pub l_pctcpu: u32 ,
614+ pub l_pid: u32 ,
615+ pub l_name: [ :: c_char; KI_LNAMELEN as usize ] ,
616+ }
617+
490618 pub struct kinfo_vmentry {
491619 pub kve_start: u64 ,
492620 pub kve_end: u64 ,
@@ -2121,6 +2249,22 @@ pub const KVME_FLAG_GROWS_DOWN: ::c_int = 0x000000020;
21212249
21222250pub const NGROUPS_MAX : :: c_int = 16 ;
21232251
2252+ pub const KI_NGROUPS : :: c_int = 16 ;
2253+ pub const KI_MAXCOMLEN : :: c_int = 24 ;
2254+ pub const KI_WMESGLEN : :: c_int = 8 ;
2255+ pub const KI_MAXLOGNAME : :: c_int = 24 ;
2256+ pub const KI_MAXEMULLEN : :: c_int = 16 ;
2257+ pub const KI_LNAMELEN : :: c_int = 20 ;
2258+
2259+ // sys/lwp.h
2260+ pub const LSIDL : :: c_int = 1 ;
2261+ pub const LSRUN : :: c_int = 2 ;
2262+ pub const LSSLEEP : :: c_int = 3 ;
2263+ pub const LSSTOP : :: c_int = 4 ;
2264+ pub const LSZOMB : :: c_int = 5 ;
2265+ pub const LSONPROC : :: c_int = 7 ;
2266+ pub const LSSUSPENDED : :: c_int = 8 ;
2267+
21242268const_fn ! {
21252269 { const } fn _ALIGN( p: usize ) -> usize {
21262270 ( p + _ALIGNBYTES) & !_ALIGNBYTES
0 commit comments