Print this page
6583 remove whole-process swapping

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/sys/proc.h
          +++ new/usr/src/uts/common/sys/proc.h
↓ open down ↓ 122 lines elided ↑ open up ↑
 123  123  } ret_tidhash_t;
 124  124  
 125  125  struct pool;
 126  126  struct task;
 127  127  struct zone;
 128  128  struct brand;
 129  129  struct corectl_path;
 130  130  struct corectl_content;
 131  131  
 132  132  /*
 133      - * One structure allocated per active process.  It contains all
 134      - * data needed about the process while the process may be swapped
 135      - * out.  Other per-process data (user.h) is also inside the proc structure.
 136      - * Lightweight-process data (lwp.h) and the kernel stack may be swapped out.
      133 + * One structure allocated per active process.  Per-process data (user.h) is
      134 + * also inside the proc structure.
 137  135   */
 138  136  typedef struct  proc {
 139  137          /*
 140  138           * Fields requiring no explicit locking
 141  139           */
 142  140          struct  vnode *p_exec;          /* pointer to a.out vnode */
 143  141          struct  as *p_as;               /* process address space pointer */
 144  142          struct  plock *p_lockp;         /* ptr to proc struct's mutex lock */
 145  143          kmutex_t p_crlock;              /* lock for p_cred */
 146  144          struct  cred    *p_cred;        /* process credentials */
 147  145          /*
 148  146           * Fields protected by pidlock
 149  147           */
 150      -        int     p_swapcnt;              /* number of swapped out lwps */
 151  148          char    p_stat;                 /* status of process */
 152  149          char    p_wcode;                /* current wait code */
 153  150          ushort_t p_pidflag;             /* flags protected only by pidlock */
 154  151          int     p_wdata;                /* current wait return value */
 155  152          pid_t   p_ppid;                 /* process id of parent */
 156  153          struct  proc    *p_link;        /* forward link */
 157  154          struct  proc    *p_parent;      /* ptr to parent process */
 158  155          struct  proc    *p_child;       /* ptr to first child process */
 159  156          struct  proc    *p_sibling;     /* ptr to next sibling proc on chain */
 160  157          struct  proc    *p_psibling;    /* ptr to prev sibling proc on chain */
↓ open down ↓ 662 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX