Lines Matching refs:pgp
116 pgjoin(p, pgp) in pgjoin() argument
118 register struct pid *pgp;
122 p->p_pgidp = pgp;
124 if (pgp->pid_pglink == NULL) {
125 ASSERT(pgp->pid_pgtail == NULL);
128 pgp->pid_pglink = p;
129 pgp->pid_pgtail = p;
131 ASSERT(pgp->pid_pgtail != NULL);
134 p->p_pglink = pgp->pid_pglink;
135 pgp->pid_pglink->p_ppglink = p;
136 pgp->pid_pglink = p;
138 p->p_ppglink = pgp->pid_pgtail;
140 pgp->pid_pgtail->p_pglink = p;
141 pgp->pid_pgtail = p;
145 if (pgp->pid_pglink == pgp->pid_pgtail) {
146 PID_HOLD(pgp);
148 pgp->pid_pgorphaned = 0;
150 pgp->pid_pgorphaned = 1;
151 } else if (pgp->pid_pgorphaned && pglinked(p))
152 pgp->pid_pgorphaned = 0;
160 register struct pid *pgp; local
164 pgp = prp->p_pgidp;
166 if (pgp->pid_pglink == prp) {
168 pgp->pid_pglink = prp->p_pglink;
176 if (pgp->pid_pgtail == prp) {
177 pgp->pid_pgtail = prp->p_ppglink;
184 if ((p = pgp->pid_pglink) == NULL) {
185 PID_RELE(pgp);
186 } else if (pgp->pid_pgorphaned == 0) {
192 pgp->pid_pgorphaned = 1;
208 register struct pid *pgp; local
213 if ((pgp = cp->p_pgidp)->pid_pgorphaned)
216 mp = pgp->pid_pglink;
227 pgp->pid_pgorphaned = 1;
229 sigtopg(pgp, SIGHUP);
230 sigtopg(pgp, SIGCONT);