Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/proc.h
| Show First 20 Lines • Show All 833 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_MEMBAR_PRIVE 0x00040000 /* membar private expedited | |||||
theraven: Please can we have comments that explain what each of these are for? | |||||
| registered */ | |||||
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. | |||||
| #define P2_MEMBAR_PRIVE_SYNCORE 0x00080000 /* membar private expedited | |||||
| sync core registered */ | |||||
| #define P2_MEMBAR_GLOBE 0x00100000 /* 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 305 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 132 Lines • Show Last 20 Lines | |||||
Please can we have comments that explain what each of these are for?