Lines Matching defs:dtmpl

360 static cont_device_t *contract_device_create(ctmpl_device_t *dtmpl, dev_t dev,
468 ctmpl_device_t *dtmpl = template->ctmpl_data;
470 if (dtmpl->ctd_minor)
471 kmem_free(dtmpl->ctd_minor, strlen(dtmpl->ctd_minor) + 1);
473 kmem_free(dtmpl, sizeof (ctmpl_device_t));
501 ctmpl_device_t *dtmpl = tmpl->ctmpl_data;
529 dtmpl->ctd_aset = param_value;
545 dtmpl->ctd_noneg = param_value;
568 if (dtmpl->ctd_minor != NULL) {
569 kmem_free(dtmpl->ctd_minor,
570 strlen(dtmpl->ctd_minor) + 1);
572 dtmpl->ctd_minor = i_ddi_strdup(str_value, KM_SLEEP);
601 ctmpl_device_t *dtmpl = template->ctmpl_data;
616 *param_value = dtmpl->ctd_aset;
619 *param_value = dtmpl->ctd_noneg;
622 if (dtmpl->ctd_minor) {
624 dtmpl->ctd_minor, param->ctpm_size);
645 ctmpl_device_t *dtmpl;
657 dtmpl = template->ctmpl_data;
660 if (dtmpl->ctd_minor == NULL) {
666 ASSERT(strlen(dtmpl->ctd_minor) < MAXPATHLEN);
667 bcopy(dtmpl->ctd_minor, buf, strlen(dtmpl->ctd_minor) + 1);
1198 contract_device_create(ctmpl_device_t *dtmpl, dev_t dev, int spec_type,
1206 ASSERT(dtmpl != NULL);
1215 mutex_enter(&dtmpl->ctd_ctmpl.ctmpl_lock);
1216 ASSERT(strlen(dtmpl->ctd_minor) < MAXPATHLEN);
1217 bcopy(dtmpl->ctd_minor, path, strlen(dtmpl->ctd_minor) + 1);
1218 mutex_exit(&dtmpl->ctd_ctmpl.ctmpl_lock);
1264 mutex_enter(&dtmpl->ctd_ctmpl.ctmpl_lock);
1265 ctd->cond_aset = dtmpl->ctd_aset;
1266 ctd->cond_noneg = dtmpl->ctd_noneg;
1272 if (contract_ctor(&ctd->cond_contract, device_type, &dtmpl->ctd_ctmpl,
1274 mutex_exit(&dtmpl->ctd_ctmpl.ctmpl_lock);
1293 mutex_exit(&dtmpl->ctd_ctmpl.ctmpl_lock);
1326 ctmpl_device_t *dtmpl;
1349 dtmpl = tmpl->ctmpl_data;
1356 if (dtmpl->ctd_minor != NULL) {
1359 curproc->p_pid, dtmpl->ctd_minor));
1365 kmem_free(dtmpl->ctd_minor, strlen(dtmpl->ctd_minor) + 1);
1366 dtmpl->ctd_minor = NULL;
1382 ASSERT(dtmpl->ctd_minor == NULL);
1383 dtmpl->ctd_minor = path;
1386 ctd = contract_device_create(dtmpl, dev, spec_type, curproc, &error);
1389 ASSERT(dtmpl->ctd_minor);
1390 dtmpl->ctd_minor = NULL;