Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/proc.h
Show First 20 Lines • Show All 872 Lines • ▼ Show 20 Lines | #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 */ | #define P2_PTRACEREQ 0x00004000 /* Active ptrace req */ | ||||
#define P2_NO_NEW_PRIVS 0x00008000 /* Ignore setuid */ | #define P2_NO_NEW_PRIVS 0x00008000 /* Ignore setuid */ | ||||
#define P2_WXORX_DISABLE 0x00010000 /* WX mappings enabled */ | #define P2_WXORX_DISABLE 0x00010000 /* WX mappings enabled */ | ||||
#define P2_WXORX_ENABLE_EXEC 0x00020000 /* WXORX enabled after exec */ | #define P2_WXORX_ENABLE_EXEC 0x00020000 /* WXORX enabled after exec */ | ||||
#define P2_WEXIT 0x00040000 /* exit just started, no | #define P2_WEXIT 0x00040000 /* exit just started, no | ||||
theraven: Please can we have comments that explain what each of these are for? | |||||
external thread_single() is | external thread_single() is | ||||
Done Inline ActionsIs it intentional that these have the same value? I presume that the membarrier()'s "registration" verbs exist to handle races where the initiating thread fails to observe a concurrent pm_active modification by another thread that is switching on to a CPU. markj: Is it intentional that these have the same value? I presume that the membarrier()'s… | |||||
Done Inline ActionsNo, it is a stupidity. kib: No, it is a stupidity. | |||||
permitted */ | permitted */ | ||||
#define P2_MEMBAR_PRIVE 0x00080000 /* membar private expedited | |||||
registered */ | |||||
#define P2_MEMBAR_PRIVE_SYNCORE 0x00100000 /* membar private expedited | |||||
sync core registered */ | |||||
#define P2_MEMBAR_GLOBE 0x00200000 /* membar global expedited | |||||
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 332 Lines • ▼ Show 20 Lines | |||||
struct thread *tdfind(lwpid_t, pid_t); | struct thread *tdfind(lwpid_t, pid_t); | ||||
void threadinit(void); | void threadinit(void); | ||||
void tidhash_add(struct thread *); | void tidhash_add(struct thread *); | ||||
void tidhash_remove(struct thread *); | void tidhash_remove(struct thread *); | ||||
void cpu_idle(int); | void cpu_idle(int); | ||||
int cpu_idle_wakeup(int); | int cpu_idle_wakeup(int); | ||||
extern void (*cpu_idle_hook)(sbintime_t); /* Hook to machdep CPU idler. */ | extern void (*cpu_idle_hook)(sbintime_t); /* Hook to machdep CPU idler. */ | ||||
void cpu_switch(struct thread *, struct thread *, struct mtx *); | void cpu_switch(struct thread *, struct thread *, struct mtx *); | ||||
void cpu_sync_core(void); | |||||
void cpu_throw(struct thread *, struct thread *) __dead2; | void cpu_throw(struct thread *, struct thread *) __dead2; | ||||
bool curproc_sigkilled(void); | bool curproc_sigkilled(void); | ||||
void userret(struct thread *, struct trapframe *); | void userret(struct thread *, struct trapframe *); | ||||
void cpu_exit(struct thread *); | void cpu_exit(struct thread *); | ||||
void exit1(struct thread *, int, int) __dead2; | void exit1(struct thread *, int, int) __dead2; | ||||
void cpu_copy_thread(struct thread *td, struct thread *td0); | void cpu_copy_thread(struct thread *td, struct thread *td0); | ||||
bool cpu_exec_vmspace_reuse(struct proc *p, struct vm_map *map); | bool cpu_exec_vmspace_reuse(struct proc *p, struct vm_map *map); | ||||
▲ Show 20 Lines • Show All 126 Lines • Show Last 20 Lines |
Please can we have comments that explain what each of these are for?