Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/proc.h
Show First 20 Lines • Show All 371 Lines • ▼ Show 20 Lines | #define td_retval td_uretoff.tdu_retval | ||||
struct vm_page **td_ma; /* (k) uio pages held */ | struct vm_page **td_ma; /* (k) uio pages held */ | ||||
int td_ma_cnt; /* (k) size of *td_ma */ | int td_ma_cnt; /* (k) size of *td_ma */ | ||||
/* LP64 hole */ | /* LP64 hole */ | ||||
void *td_emuldata; /* Emulator state data */ | void *td_emuldata; /* Emulator state data */ | ||||
int td_lastcpu; /* (t) Last cpu we were on. */ | int td_lastcpu; /* (t) Last cpu we were on. */ | ||||
int td_oncpu; /* (t) Which cpu we are on. */ | int td_oncpu; /* (t) Which cpu we are on. */ | ||||
void *td_lkpi_task; /* LinuxKPI task struct pointer */ | void *td_lkpi_task; /* LinuxKPI task struct pointer */ | ||||
int td_pmcpend; | int td_pmcpend; | ||||
void *td_coredump; /* (c) coredump request. */ | |||||
#ifdef EPOCH_TRACE | #ifdef EPOCH_TRACE | ||||
SLIST_HEAD(, epoch_tracker) td_epochs; | SLIST_HEAD(, epoch_tracker) td_epochs; | ||||
#endif | #endif | ||||
}; | }; | ||||
struct thread0_storage { | struct thread0_storage { | ||||
struct thread t0st_thread; | struct thread t0st_thread; | ||||
uint64_t t0st_sched[10]; | uint64_t t0st_sched[10]; | ||||
▲ Show 20 Lines • Show All 92 Lines • ▼ Show 20 Lines | |||||
#define TDB_STOPATFORK 0x00000080 /* Stop at the return from fork (child | #define TDB_STOPATFORK 0x00000080 /* Stop at the return from fork (child | ||||
only) */ | only) */ | ||||
#define TDB_CHILD 0x00000100 /* New child indicator for ptrace() */ | #define TDB_CHILD 0x00000100 /* New child indicator for ptrace() */ | ||||
#define TDB_BORN 0x00000200 /* New LWP indicator for ptrace() */ | #define TDB_BORN 0x00000200 /* New LWP indicator for ptrace() */ | ||||
#define TDB_EXIT 0x00000400 /* Exiting LWP indicator for ptrace() */ | #define TDB_EXIT 0x00000400 /* Exiting LWP indicator for ptrace() */ | ||||
#define TDB_VFORK 0x00000800 /* vfork indicator for ptrace() */ | #define TDB_VFORK 0x00000800 /* vfork indicator for ptrace() */ | ||||
#define TDB_FSTP 0x00001000 /* The thread is PT_ATTACH leader */ | #define TDB_FSTP 0x00001000 /* The thread is PT_ATTACH leader */ | ||||
#define TDB_STEP 0x00002000 /* (x86) PSL_T set for PT_STEP */ | #define TDB_STEP 0x00002000 /* (x86) PSL_T set for PT_STEP */ | ||||
#define TDB_SSWITCH 0x00004000 /* Suspended in ptracestop */ | |||||
#define TDB_COREDUMPRQ 0x00008000 /* Coredump request */ | |||||
/* | /* | ||||
* "Private" flags kept in td_pflags: | * "Private" flags kept in td_pflags: | ||||
* These are only written by curthread and thus need no locking. | * These are only written by curthread and thus need no locking. | ||||
*/ | */ | ||||
#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. */ | ||||
▲ Show 20 Lines • Show All 328 Lines • ▼ Show 20 Lines | #define P2_PROTMAX_ENABLE 0x00000200 /* Force enable implied | ||||
PROT_MAX. */ | PROT_MAX. */ | ||||
#define P2_PROTMAX_DISABLE 0x00000400 /* Force disable implied | #define P2_PROTMAX_DISABLE 0x00000400 /* Force disable implied | ||||
PROT_MAX. */ | PROT_MAX. */ | ||||
#define P2_STKGAP_DISABLE 0x00000800 /* Disable stack gap for | #define P2_STKGAP_DISABLE 0x00000800 /* Disable stack gap for | ||||
MAP_STACK */ | MAP_STACK */ | ||||
#define P2_STKGAP_DISABLE_EXEC 0x00001000 /* Stack gap disabled | #define P2_STKGAP_DISABLE_EXEC 0x00001000 /* Stack gap disabled | ||||
after exec */ | after exec */ | ||||
#define P2_ITSTOPPED 0x00002000 | #define P2_ITSTOPPED 0x00002000 | ||||
#define P2_PTRACEREQ 0x00004000 /* Active ptrace req */ | |||||
/* 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 346 Lines • ▼ Show 20 Lines | |||||
void thread_link(struct thread *td, struct proc *p); | void thread_link(struct thread *td, struct proc *p); | ||||
int thread_single(struct proc *p, int how); | int thread_single(struct proc *p, int how); | ||||
void thread_single_end(struct proc *p, int how); | void thread_single_end(struct proc *p, int how); | ||||
void thread_stash(struct thread *td); | void thread_stash(struct thread *td); | ||||
void thread_stopped(struct proc *p); | void thread_stopped(struct proc *p); | ||||
void childproc_stopped(struct proc *child, int reason); | void childproc_stopped(struct proc *child, int reason); | ||||
void childproc_continued(struct proc *child); | void childproc_continued(struct proc *child); | ||||
void childproc_exited(struct proc *child); | void childproc_exited(struct proc *child); | ||||
void thread_run_flash(struct thread *td); | |||||
int thread_suspend_check(int how); | int thread_suspend_check(int how); | ||||
bool thread_suspend_check_needed(void); | bool thread_suspend_check_needed(void); | ||||
void thread_suspend_switch(struct thread *, struct proc *p); | void thread_suspend_switch(struct thread *, struct proc *p); | ||||
void thread_suspend_one(struct thread *td); | void thread_suspend_one(struct thread *td); | ||||
void thread_unlink(struct thread *td); | void thread_unlink(struct thread *td); | ||||
void thread_unsuspend(struct proc *p); | void thread_unsuspend(struct proc *p); | ||||
void thread_wait(struct proc *p); | void thread_wait(struct proc *p); | ||||
▲ Show 20 Lines • Show All 88 Lines • Show Last 20 Lines |