Lines Matching refs:ct

229 	contract_t *ct;
258 ct = contract_type_ptr(process_type, param_value,
260 if (ct == NULL)
262 if (ct->ct_owner != curproc) {
263 contract_rele(ct);
266 if (((cont_process_t *)ct->ct_data)->conp_nmembers) {
267 contract_rele(ct);
271 ct = NULL;
275 ctp->ctp_subsume = ct;
462 contract_process_free(contract_t *ct)
464 cont_process_t *ctp = ct->ct_data;
510 contract_process_kill(contract_t *ct, proc_t *ex, int checkpriv)
512 cont_process_t *ctp = ct->ct_data;
516 ASSERT(MUTEX_HELD(&ct->ct_lock));
581 contract_process_adopt(contract_t *ct, proc_t *p)
586 ASSERT(MUTEX_HELD(&ct->ct_lock));
588 list_remove(&parent->conp_inherited, ct);
605 contract_process_abandon(contract_t *ct)
607 cont_process_t *ctp = ct->ct_data;
609 ASSERT(MUTEX_HELD(&ct->ct_lock));
615 contract_destroy(ct);
623 contract_process_kill(ct, NULL, B_TRUE);
624 contract_orphan(ct);
625 mutex_exit(&ct->ct_lock);
626 contract_rele(ct);
636 contract_process_destroy(contract_t *ct)
638 cont_process_t *ctp = ct->ct_data;
641 ASSERT(MUTEX_HELD(&ct->ct_lock));
664 contract_process_status(contract_t *ct, zone_t *zone, int detail, nvlist_t *nvl,
667 cont_process_t *ctp = ct->ct_data;
674 mutex_enter(&ct->ct_lock);
675 contract_status_common(ct, zone, status, model);
677 mutex_exit(&ct->ct_lock);
684 mutex_enter(&ct->ct_lock);
688 mutex_exit(&ct->ct_lock);
694 mutex_enter(&ct->ct_lock);
703 contract_status_common(ct, zone, status, model);
713 mutex_exit(&ct->ct_lock);
763 contract_process_newct(contract_t *ct)
886 contract_t *ct;
890 while (ct = list_head(&sct->conp_inherited)) {
891 mutex_enter(&ct->ct_lock);
892 list_remove(&sct->conp_inherited, ct);
893 list_insert_tail(&ctp->conp_inherited, ct);
894 ct->ct_regent = &ctp->conp_contract;
895 mutex_exit(&ct->ct_lock);
924 contract_t *ct = &ctp->conp_contract;
931 mutex_enter(&ct->ct_lock);
947 mutex_exit(&ct->ct_lock);
955 (void) cte_publish_all(ct, event, nvl, NULL);
956 mutex_enter(&ct->ct_lock);
965 mutex_exit(&ct->ct_lock);
974 (void) cte_publish_all(ct, event, nvl, NULL);
975 mutex_enter(&ct->ct_lock);
982 if (ct->ct_state == CTS_ORPHAN) {
983 contract_destroy(ct);
987 mutex_exit(&ct->ct_lock);
988 contract_rele(ct);
1013 contract_t *ct;
1027 ct = &ctp->conp_contract;
1034 mutex_enter(&ct->ct_lock);
1039 mutex_exit(&ct->ct_lock);
1044 contract_hold(ct);
1047 mutex_exit(&ct->ct_lock);
1058 (void) cte_publish_all(ct, event, nvl, NULL);
1075 contract_t *ct = &ctp->conp_contract;
1105 (void) cte_publish_all(ct, event, nvl, gnvl);
1109 mutex_enter(&ct->ct_lock);
1110 contract_process_kill(ct, p, B_TRUE);
1111 mutex_exit(&ct->ct_lock);
1125 contract_t *ct = &ctp->conp_contract;
1137 (void) cte_publish_all(ct, event, nvl, NULL);
1141 mutex_enter(&ct->ct_lock);
1142 contract_process_kill(ct, p, B_FALSE);
1143 mutex_exit(&ct->ct_lock);
1161 contract_t *ct = &ctp->conp_contract;
1187 (void) cte_publish_all(ct, event, nvl, gnvl);
1191 mutex_enter(&ct->ct_lock);
1192 contract_process_kill(ct, p, B_TRUE);
1193 mutex_exit(&ct->ct_lock);