Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/proc.h
Show First 20 Lines • Show All 316 Lines • ▼ Show 20 Lines | #define td_startcopy td_endzero | ||||
u_char td_user_pri; /* (t) User pri from estcpu and nice. */ | u_char td_user_pri; /* (t) User pri from estcpu and nice. */ | ||||
u_char td_base_user_pri; /* (t) Base user pri */ | u_char td_base_user_pri; /* (t) Base user pri */ | ||||
u_char td_pre_epoch_prio; /* (k) User pri on entry to epoch */ | u_char td_pre_epoch_prio; /* (k) User pri on entry to epoch */ | ||||
uintptr_t td_rb_list; /* (k) Robust list head. */ | uintptr_t td_rb_list; /* (k) Robust list head. */ | ||||
uintptr_t td_rbp_list; /* (k) Robust priv list head. */ | uintptr_t td_rbp_list; /* (k) Robust priv list head. */ | ||||
uintptr_t td_rb_inact; /* (k) Current in-action mutex loc. */ | uintptr_t td_rb_inact; /* (k) Current in-action mutex loc. */ | ||||
struct syscall_args td_sa; /* (kx) Syscall parameters. Copied on | struct syscall_args td_sa; /* (kx) Syscall parameters. Copied on | ||||
fork for child tracing. */ | fork for child tracing. */ | ||||
void *td_sigblock_ptr; /* (k) uptr for fast sigblock. */ | |||||
uint32_t td_sigblock_val; /* (k) fast sigblock value read at | |||||
td_sigblock_ptr on kern entry */ | |||||
#define td_endcopy td_pcb | #define td_endcopy td_pcb | ||||
/* | /* | ||||
* Fields that must be manually set in fork1() or create_thread() | * Fields that must be manually set in fork1() or create_thread() | ||||
* or already have been set in the allocator, constructor, etc. | * or already have been set in the allocator, constructor, etc. | ||||
*/ | */ | ||||
struct pcb *td_pcb; /* (k) Kernel VA of pcb and kstack. */ | struct pcb *td_pcb; /* (k) Kernel VA of pcb and kstack. */ | ||||
enum td_states { | enum td_states { | ||||
▲ Show 20 Lines • Show All 148 Lines • ▼ Show 20 Lines | |||||
#define TDP_OLDMASK 0x00000001 /* Need to restore mask after suspend. */ | #define TDP_OLDMASK 0x00000001 /* Need to restore mask after suspend. */ | ||||
#define TDP_INKTR 0x00000002 /* Thread is currently in KTR code. */ | #define TDP_INKTR 0x00000002 /* Thread is currently in KTR code. */ | ||||
#define TDP_INKTRACE 0x00000004 /* Thread is currently in KTRACE code. */ | #define TDP_INKTRACE 0x00000004 /* Thread is currently in KTRACE code. */ | ||||
#define TDP_BUFNEED 0x00000008 /* Do not recurse into the buf flush */ | #define TDP_BUFNEED 0x00000008 /* Do not recurse into the buf flush */ | ||||
#define TDP_COWINPROGRESS 0x00000010 /* Snapshot copy-on-write in progress. */ | #define TDP_COWINPROGRESS 0x00000010 /* Snapshot copy-on-write in progress. */ | ||||
#define TDP_ALTSTACK 0x00000020 /* Have alternate signal stack. */ | #define TDP_ALTSTACK 0x00000020 /* Have alternate signal stack. */ | ||||
#define TDP_DEADLKTREAT 0x00000040 /* Lock acquisition - deadlock treatment. */ | #define TDP_DEADLKTREAT 0x00000040 /* Lock acquisition - deadlock treatment. */ | ||||
#define TDP_NOFAULTING 0x00000080 /* Do not handle page faults. */ | #define TDP_NOFAULTING 0x00000080 /* Do not handle page faults. */ | ||||
#define TDP_UNUSED9 0x00000100 /* --available-- */ | #define TDP_FAST_SIGBLOCK 0x00000100 /* Fast sigblock active */ | ||||
#define TDP_OWEUPC 0x00000200 /* Call addupc() at next AST. */ | #define TDP_OWEUPC 0x00000200 /* Call addupc() at next AST. */ | ||||
#define TDP_ITHREAD 0x00000400 /* Thread is an interrupt thread. */ | #define TDP_ITHREAD 0x00000400 /* Thread is an interrupt thread. */ | ||||
#define TDP_SYNCIO 0x00000800 /* Local override, disable async i/o. */ | #define TDP_SYNCIO 0x00000800 /* Local override, disable async i/o. */ | ||||
#define TDP_SCHED1 0x00001000 /* Reserved for scheduler private use */ | #define TDP_SCHED1 0x00001000 /* Reserved for scheduler private use */ | ||||
#define TDP_SCHED2 0x00002000 /* Reserved for scheduler private use */ | #define TDP_SCHED2 0x00002000 /* Reserved for scheduler private use */ | ||||
#define TDP_SCHED3 0x00004000 /* Reserved for scheduler private use */ | #define TDP_SCHED3 0x00004000 /* Reserved for scheduler private use */ | ||||
#define TDP_SCHED4 0x00008000 /* Reserved for scheduler private use */ | #define TDP_SCHED4 0x00008000 /* Reserved for scheduler private use */ | ||||
#define TDP_GEOM 0x00010000 /* Settle GEOM before finishing syscall */ | #define TDP_GEOM 0x00010000 /* Settle GEOM before finishing syscall */ | ||||
#define TDP_SOFTDEP 0x00020000 /* Stuck processing softdep worklist */ | #define TDP_SOFTDEP 0x00020000 /* Stuck processing softdep worklist */ | ||||
#define TDP_NORUNNINGBUF 0x00040000 /* Ignore runningbufspace check */ | #define TDP_NORUNNINGBUF 0x00040000 /* Ignore runningbufspace check */ | ||||
#define TDP_WAKEUP 0x00080000 /* Don't sleep in umtx cond_wait */ | #define TDP_WAKEUP 0x00080000 /* Don't sleep in umtx cond_wait */ | ||||
#define TDP_INBDFLUSH 0x00100000 /* Already in BO_BDFLUSH, do not recurse */ | #define TDP_INBDFLUSH 0x00100000 /* Already in BO_BDFLUSH, do not recurse */ | ||||
#define TDP_KTHREAD 0x00200000 /* This is an official kernel thread */ | #define TDP_KTHREAD 0x00200000 /* This is an official kernel thread */ | ||||
#define TDP_CALLCHAIN 0x00400000 /* Capture thread's callchain */ | #define TDP_CALLCHAIN 0x00400000 /* Capture thread's callchain */ | ||||
#define TDP_IGNSUSP 0x00800000 /* Permission to ignore the MNTK_SUSPEND* */ | #define TDP_IGNSUSP 0x00800000 /* Permission to ignore the MNTK_SUSPEND* */ | ||||
#define TDP_AUDITREC 0x01000000 /* Audit record pending on thread */ | #define TDP_AUDITREC 0x01000000 /* Audit record pending on thread */ | ||||
#define TDP_RFPPWAIT 0x02000000 /* Handle RFPPWAIT on syscall exit */ | #define TDP_RFPPWAIT 0x02000000 /* Handle RFPPWAIT on syscall exit */ | ||||
#define TDP_RESETSPUR 0x04000000 /* Reset spurious page fault history. */ | #define TDP_RESETSPUR 0x04000000 /* Reset spurious page fault history. */ | ||||
#define TDP_NERRNO 0x08000000 /* Last errno is already in td_errno */ | #define TDP_NERRNO 0x08000000 /* Last errno is already in td_errno */ | ||||
#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_FORKING 0x20000000 /* Thread is being created through fork() */ | #define TDP_FORKING 0x20000000 /* Thread is being created through fork() */ | ||||
#define TDP_EXECVMSPC 0x40000000 /* Execve destroyed old vmspace */ | #define TDP_EXECVMSPC 0x40000000 /* Execve destroyed old vmspace */ | ||||
#define TDP_FAST_SIGPENDING 0x80000000 | |||||
/* | /* | ||||
* 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 716 Lines • Show Last 20 Lines |