Lines Matching defs:pctx
45 struct pctxop *pctx;
47 pctx = kmem_alloc(sizeof (struct pctxop), KM_SLEEP);
48 pctx->save_op = save;
49 pctx->restore_op = restore;
50 pctx->fork_op = fork;
51 pctx->exit_op = exit;
52 pctx->free_op = free;
53 pctx->arg = arg;
54 pctx->next = p->p_pctx;
55 p->p_pctx = pctx;
71 struct pctxop *pctx, *prev_pctx;
75 for (pctx = p->p_pctx; pctx != NULL; pctx = pctx->next) {
76 if (pctx->save_op == save && pctx->restore_op == restore &&
77 pctx->fork_op == fork &&
78 pctx->exit_op == exit && pctx->free_op == free &&
79 pctx->arg == arg) {
81 prev_pctx->next = pctx->next;
83 p->p_pctx = pctx->next;
84 if (pctx->free_op != NULL)
85 (pctx->free_op)(pctx->arg, 0);
86 kmem_free(pctx, sizeof (struct pctxop));
90 prev_pctx = pctx;
99 struct pctxop *pctx;
102 for (pctx = p->p_pctx; pctx != 0; pctx = pctx->next)
103 if (pctx->save_op != NULL)
104 (pctx->save_op)(pctx->arg);
110 struct pctxop *pctx;
113 for (pctx = p->p_pctx; pctx != 0; pctx = pctx->next)
114 if (pctx->restore_op != NULL)
115 (pctx->restore_op)(pctx->arg);
121 struct pctxop *pctx;
123 for (pctx = p->p_pctx; pctx != NULL; pctx = pctx->next)
124 if (pctx->fork_op != NULL)
125 (pctx->fork_op)(p, cp);
138 struct pctxop *pctx;
140 for (pctx = p->p_pctx; pctx != NULL; pctx = pctx->next)
141 if (pctx->exit_op != NULL)
142 (pctx->exit_op)(p);
151 struct pctxop *pctx;
154 while ((pctx = p->p_pctx) != NULL) {
155 p->p_pctx = pctx->next;
156 if (pctx->free_op != NULL)
157 (pctx->free_op)(pctx->arg, isexec);
158 kmem_free(pctx, sizeof (struct pctxop));