Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/proc.h
Show First 20 Lines • Show All 318 Lines • ▼ Show 20 Lines | #define td_startzero td_flags | ||||
u_int td_no_sleeping; /* (k) Sleeping disabled count. */ | u_int td_no_sleeping; /* (k) Sleeping disabled count. */ | ||||
void *td_su; /* (k) FFS SU private */ | void *td_su; /* (k) FFS SU private */ | ||||
sbintime_t td_sleeptimo; /* (t) Sleep timeout. */ | sbintime_t td_sleeptimo; /* (t) Sleep timeout. */ | ||||
int td_rtcgen; /* (s) rtc_generation of abs. sleep */ | int td_rtcgen; /* (s) rtc_generation of abs. sleep */ | ||||
int td_errno; /* (k) Error from last syscall. */ | int td_errno; /* (k) Error from last syscall. */ | ||||
size_t td_vslock_sz; /* (k) amount of vslock-ed space */ | size_t td_vslock_sz; /* (k) amount of vslock-ed space */ | ||||
struct kcov_info *td_kcov_info; /* (*) Kernel code coverage data */ | struct kcov_info *td_kcov_info; /* (*) Kernel code coverage data */ | ||||
u_int td_ucredref; /* (k) references on td_realucred */ | u_int td_ucredref; /* (k) references on td_realucred */ | ||||
uint32_t td_rseq_sig; /* (k) abort handler signature */ | |||||
void *td_rseq_abi; /* (k) usermode rseq */ | |||||
register_t td_rseq_start_ip;/* (k) */ | |||||
register_t td_rseq_end_ip; /* (k) */ | |||||
register_t td_rseq_abort_ip;/* (k) */ | |||||
#define td_endzero td_sigmask | #define td_endzero td_sigmask | ||||
/* Copied during fork1() or create_thread(). */ | /* Copied during fork1() or create_thread(). */ | ||||
#define td_startcopy td_endzero | #define td_startcopy td_endzero | ||||
sigset_t td_sigmask; /* (c) Current signal mask. */ | sigset_t td_sigmask; /* (c) Current signal mask. */ | ||||
u_char td_rqindex; /* (t) Run queue index. */ | u_char td_rqindex; /* (t) Run queue index. */ | ||||
u_char td_base_pri; /* (t) Thread base kernel priority. */ | u_char td_base_pri; /* (t) Thread base kernel priority. */ | ||||
u_char td_priority; /* (t) Thread active priority. */ | u_char td_priority; /* (t) Thread active priority. */ | ||||
▲ Show 20 Lines • Show All 136 Lines • ▼ Show 20 Lines | |||||
#define TDF_SEINTR 0x00200000 /* EINTR on stop attempts. */ | #define TDF_SEINTR 0x00200000 /* EINTR on stop attempts. */ | ||||
#define TDF_SWAPINREQ 0x00400000 /* Swapin request due to wakeup. */ | #define TDF_SWAPINREQ 0x00400000 /* Swapin request due to wakeup. */ | ||||
#define TDF_UNUSED6 0x00800000 /* Available */ | #define TDF_UNUSED6 0x00800000 /* Available */ | ||||
#define TDF_SCHED0 0x01000000 /* Reserved for scheduler private use */ | #define TDF_SCHED0 0x01000000 /* Reserved for scheduler private use */ | ||||
#define TDF_SCHED1 0x02000000 /* Reserved for scheduler private use */ | #define TDF_SCHED1 0x02000000 /* Reserved for scheduler private use */ | ||||
#define TDF_SCHED2 0x04000000 /* Reserved for scheduler private use */ | #define TDF_SCHED2 0x04000000 /* Reserved for scheduler private use */ | ||||
#define TDF_SCHED3 0x08000000 /* Reserved for scheduler private use */ | #define TDF_SCHED3 0x08000000 /* Reserved for scheduler private use */ | ||||
#define TDF_UNUSED7 0x10000000 /* Available */ | #define TDF_UNUSED7 0x10000000 /* Available */ | ||||
#define TDF_UNUSED8 0x20000000 /* Available */ | #define TDF_RSEQ 0x20000000 /* rseq active */ | ||||
#define TDF_UNUSED9 0x40000000 /* Available */ | #define TDF_RSEQ_MB 0x40000000 /* MEMBARRIER_RSEQ requested */ | ||||
#define TDF_UNUSED10 0x80000000 /* Available */ | #define TDF_RSEQ_CLRCS 0x80000000 /* rseq clear rc */ | ||||
enum { | enum { | ||||
TDA_AST = 0, /* Special: call all non-flagged AST handlers */ | TDA_AST = 0, /* Special: call all non-flagged AST handlers */ | ||||
TDA_OWEUPC, | TDA_OWEUPC, | ||||
TDA_HWPMC, | TDA_HWPMC, | ||||
TDA_VFORK, | TDA_VFORK, | ||||
TDA_ALRM, | TDA_ALRM, | ||||
TDA_PROF, | TDA_PROF, | ||||
TDA_MAC, | TDA_MAC, | ||||
TDA_SCHED, | TDA_SCHED, | ||||
TDA_UFS, | TDA_UFS, | ||||
TDA_GEOM, | TDA_GEOM, | ||||
TDA_KQUEUE, | TDA_KQUEUE, | ||||
TDA_RACCT, | TDA_RACCT, | ||||
TDA_MOD1, /* For third party use, before signals are */ | TDA_MOD1, /* For third party use, before signals are */ | ||||
TAD_MOD2, /* processed .. */ | TAD_MOD2, /* processed .. */ | ||||
TDA_SIG, | TDA_SIG, | ||||
TDA_RSEQ, | |||||
TDA_KTRACE, | TDA_KTRACE, | ||||
TDA_SUSPEND, | TDA_SUSPEND, | ||||
TDA_SIGSUSPEND, | TDA_SIGSUSPEND, | ||||
TDA_MOD3, /* .. and after */ | TDA_MOD3, /* .. and after */ | ||||
TAD_MOD4, | TAD_MOD4, | ||||
TDA_MAX, | TDA_MAX, | ||||
}; | }; | ||||
#define TDAI(tda) (1U << (tda)) | #define TDAI(tda) (1U << (tda)) | ||||
▲ Show 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | |||||
#define TDP_UIOHELD 0x10000000 /* Current uio has pages held in td_ma */ | #define TDP_UIOHELD 0x10000000 /* Current uio has pages held in td_ma */ | ||||
#define TDP_UNUSED0 0x20000000 /* UNUSED */ | #define TDP_UNUSED0 0x20000000 /* UNUSED */ | ||||
#define TDP_EXECVMSPC 0x40000000 /* Execve destroyed old vmspace */ | #define TDP_EXECVMSPC 0x40000000 /* Execve destroyed old vmspace */ | ||||
#define TDP_SIGFASTPENDING 0x80000000 /* Pending signal due to sigfastblock */ | #define TDP_SIGFASTPENDING 0x80000000 /* Pending signal due to sigfastblock */ | ||||
#define TDP2_SBPAGES 0x00000001 /* Owns sbusy on some pages */ | #define TDP2_SBPAGES 0x00000001 /* Owns sbusy on some pages */ | ||||
#define TDP2_COMPAT32RB 0x00000002 /* compat32 ABI for robust lists */ | #define TDP2_COMPAT32RB 0x00000002 /* compat32 ABI for robust lists */ | ||||
#define TDP2_ACCT 0x00000004 /* Doing accounting */ | #define TDP2_ACCT 0x00000004 /* Doing accounting */ | ||||
#define TDP2_RSEQ_SIG 0x00000008 | |||||
/* | /* | ||||
* Reasons that the current thread can not be run yet. | * Reasons that the current thread can not be run yet. | ||||
* More than one may apply. | * More than one may apply. | ||||
*/ | */ | ||||
#define TDI_SUSPENDED 0x0001 /* On suspension queue. */ | #define TDI_SUSPENDED 0x0001 /* On suspension queue. */ | ||||
#define TDI_SLEEPING 0x0002 /* Actually asleep! (tricky). */ | #define TDI_SLEEPING 0x0002 /* Actually asleep! (tricky). */ | ||||
#define TDI_SWAPPED 0x0004 /* Stack not in mem. Bad juju if run. */ | #define TDI_SWAPPED 0x0004 /* Stack not in mem. Bad juju if run. */ | ||||
▲ Show 20 Lines • Show All 304 Lines • ▼ Show 20 Lines | #define P2_WEXIT 0x00040000 /* exit just started, no | ||||
external thread_single() is | external thread_single() is | ||||
permitted */ | permitted */ | ||||
#define P2_MEMBAR_PRIVE 0x00080000 /* membar private expedited | #define P2_MEMBAR_PRIVE 0x00080000 /* membar private expedited | ||||
registered */ | registered */ | ||||
#define P2_MEMBAR_PRIVE_SYNCORE 0x00100000 /* membar private expedited | #define P2_MEMBAR_PRIVE_SYNCORE 0x00100000 /* membar private expedited | ||||
sync core registered */ | sync core registered */ | ||||
#define P2_MEMBAR_GLOBE 0x00200000 /* membar global expedited | #define P2_MEMBAR_GLOBE 0x00200000 /* membar global expedited | ||||
registered */ | registered */ | ||||
#define P2_MEMBAR_PRIVE_RSEQ 0x00200000 /* membar private expedited | |||||
rseq registered */ | |||||
/* Flags protected by proctree_lock, kept in p_treeflags. */ | /* Flags protected by proctree_lock, kept in p_treeflags. */ | ||||
#define P_TREE_ORPHANED 0x00000001 /* Reparented, on orphan list */ | #define P_TREE_ORPHANED 0x00000001 /* Reparented, on orphan list */ | ||||
#define P_TREE_FIRST_ORPHAN 0x00000002 /* First element of orphan | #define P_TREE_FIRST_ORPHAN 0x00000002 /* First element of orphan | ||||
list */ | list */ | ||||
#define P_TREE_REAPER 0x00000004 /* Reaper of subtree */ | #define P_TREE_REAPER 0x00000004 /* Reaper of subtree */ | ||||
#define P_TREE_GRPEXITED 0x00000008 /* exit1() done with job ctl */ | #define P_TREE_GRPEXITED 0x00000008 /* exit1() done with job ctl */ | ||||
▲ Show 20 Lines • Show All 475 Lines • Show Last 20 Lines |