proc.h (42202) | proc.h (42379) |
---|---|
1/*- 2 * Copyright (c) 1986, 1989, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)proc.h 8.15 (Berkeley) 5/19/95 | 1/*- 2 * Copyright (c) 1986, 1989, 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * (c) UNIX System Laboratories, Inc. 5 * All or some portions of this file are derived from material licensed 6 * to the University of California by American Telephone and Telegraph 7 * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8 * the permission of UNIX System Laboratories, Inc. --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)proc.h 8.15 (Berkeley) 5/19/95 |
39 * $Id: proc.h,v 1.64 1998/12/21 07:41:50 dillon Exp $ | 39 * $Id: proc.h,v 1.65 1998/12/31 13:23:16 bde Exp $ |
40 */ 41 42#ifndef _SYS_PROC_H_ 43#define _SYS_PROC_H_ 44 45#include <machine/proc.h> /* Machine-dependent proc substruct. */ 46#include <sys/callout.h> /* For struct callout_handle. */ 47#include <sys/rtprio.h> /* For struct rtprio. */ --- 33 unchanged lines hidden (view full) --- 81 int pg_jobc; /* # procs qualifying pgrp for job control */ 82}; 83 84#ifdef COMPAT_LINUX_THREADS 85struct procsig { 86#define ps_begincopy ps_sigignore 87 sigset_t ps_sigignore; /* Signals being ignored. */ 88 sigset_t ps_sigcatch; /* Signals being caught by user. */ | 40 */ 41 42#ifndef _SYS_PROC_H_ 43#define _SYS_PROC_H_ 44 45#include <machine/proc.h> /* Machine-dependent proc substruct. */ 46#include <sys/callout.h> /* For struct callout_handle. */ 47#include <sys/rtprio.h> /* For struct rtprio. */ --- 33 unchanged lines hidden (view full) --- 81 int pg_jobc; /* # procs qualifying pgrp for job control */ 82}; 83 84#ifdef COMPAT_LINUX_THREADS 85struct procsig { 86#define ps_begincopy ps_sigignore 87 sigset_t ps_sigignore; /* Signals being ignored. */ 88 sigset_t ps_sigcatch; /* Signals being caught by user. */ |
89 int ps_flag; 90 struct sigacts ps_sigacts; | 89 int ps_flag; 90 struct sigacts *ps_sigacts; |
91#define ps_endcopy ps_refcnt 92 int ps_refcnt; | 91#define ps_endcopy ps_refcnt 92 int ps_refcnt; |
93 int ps_posix; | |
94}; | 93}; |
95 | |
96#endif /* COMPAT_LINUX_THREADS */ 97 98/* 99 * pasleep structure, used by asleep() syscall to hold requested priority 100 * and timeout values for await(). 101 */ 102struct pasleep { 103 int as_priority; /* Async priority. */ --- 16 unchanged lines hidden (view full) --- 120 LIST_ENTRY(proc) p_list; /* List of all processes. */ 121 122 /* substructures: */ 123 struct pcred *p_cred; /* Process owner's identity. */ 124 struct filedesc *p_fd; /* Ptr to open files structure. */ 125 struct pstats *p_stats; /* Accounting/statistics (PROC ONLY). */ 126 struct plimit *p_limit; /* Process limits. */ 127 struct vm_object *p_upages_obj;/* Upages object */ | 94#endif /* COMPAT_LINUX_THREADS */ 95 96/* 97 * pasleep structure, used by asleep() syscall to hold requested priority 98 * and timeout values for await(). 99 */ 100struct pasleep { 101 int as_priority; /* Async priority. */ --- 16 unchanged lines hidden (view full) --- 118 LIST_ENTRY(proc) p_list; /* List of all processes. */ 119 120 /* substructures: */ 121 struct pcred *p_cred; /* Process owner's identity. */ 122 struct filedesc *p_fd; /* Ptr to open files structure. */ 123 struct pstats *p_stats; /* Accounting/statistics (PROC ONLY). */ 124 struct plimit *p_limit; /* Process limits. */ 125 struct vm_object *p_upages_obj;/* Upages object */ |
126#ifndef COMPAT_LINUX_THREADS |
|
128 struct sigacts *p_sigacts; /* Signal actions, state (PROC ONLY). */ | 127 struct sigacts *p_sigacts; /* Signal actions, state (PROC ONLY). */ |
128#else 129 struct procsig *p_procsig; 130#define p_sigacts p_procsig->ps_sigacts 131#define p_sigignore p_procsig->ps_sigignore 132#define p_sigcatch p_procsig->ps_sigcatch 133#endif |
|
129 130#define p_ucred p_cred->pc_ucred 131#define p_rlimit p_limit->pl_rlimit 132 133 int p_flag; /* P_* flags. */ 134 char p_stat; /* S* process status. */ 135 char p_pad1[3]; 136 --- 59 unchanged lines hidden (view full) --- 196 int p_sig; /* for core dump/debugger XXX */ 197 u_long p_code; /* for core dump/debugger XXX */ 198#endif /* COMPAT_LINUX_THREADS */ 199 200/* End area that is zeroed on creation. */ 201#define p_endzero p_startcopy 202 203/* The following fields are all copied upon creation in fork. */ | 134 135#define p_ucred p_cred->pc_ucred 136#define p_rlimit p_limit->pl_rlimit 137 138 int p_flag; /* P_* flags. */ 139 char p_stat; /* S* process status. */ 140 char p_pad1[3]; 141 --- 59 unchanged lines hidden (view full) --- 201 int p_sig; /* for core dump/debugger XXX */ 202 u_long p_code; /* for core dump/debugger XXX */ 203#endif /* COMPAT_LINUX_THREADS */ 204 205/* End area that is zeroed on creation. */ 206#define p_endzero p_startcopy 207 208/* The following fields are all copied upon creation in fork. */ |
204#ifndef COMPAT_LINUX_THREADS | |
205#define p_startcopy p_sigmask | 209#define p_startcopy p_sigmask |
206#else 207#define p_startcopy p_procsig 208#endif /* COMPAT_LINUX_THREADS */ | |
209 | 210 |
210#ifdef COMPAT_LINUX_THREADS 211 struct procsig *p_procsig; 212#define p_sigignore p_procsig->ps_sigignore 213#define p_sigcatch p_procsig->ps_sigcatch 214#endif /* COMPAT_LINUX_THREADS */ | |
215 sigset_t p_sigmask; /* Current signal mask. */ 216#ifndef COMPAT_LINUX_THREADS 217 sigset_t p_sigignore; /* Signals being ignored. */ 218 sigset_t p_sigcatch; /* Signals being caught by user. */ | 211 sigset_t p_sigmask; /* Current signal mask. */ 212#ifndef COMPAT_LINUX_THREADS 213 sigset_t p_sigignore; /* Signals being ignored. */ 214 sigset_t p_sigcatch; /* Signals being caught by user. */ |
219 | |
220#endif /* COMPAT_LINUX_THREADS */ 221 u_char p_priority; /* Process priority. */ 222 u_char p_usrpri; /* User-priority based on p_cpu and p_nice. */ 223 char p_nice; /* Process "nice" value. */ 224 char p_comm[MAXCOMLEN+1]; 225 226 struct pgrp *p_pgrp; /* Pointer to process group. */ 227 --- 180 unchanged lines hidden --- | 215#endif /* COMPAT_LINUX_THREADS */ 216 u_char p_priority; /* Process priority. */ 217 u_char p_usrpri; /* User-priority based on p_cpu and p_nice. */ 218 char p_nice; /* Process "nice" value. */ 219 char p_comm[MAXCOMLEN+1]; 220 221 struct pgrp *p_pgrp; /* Pointer to process group. */ 222 --- 180 unchanged lines hidden --- |