Lines Matching defs:fbt

1008 	fbt_probe_t *fbt, *retfbt;
1360 fbt = kmem_zalloc(sizeof (fbt_probe_t), KM_SLEEP);
1361 fbt->fbtp_name = name;
1362 fbt->fbtp_ctl = ctl;
1363 fbt->fbtp_id = dtrace_probe_create(fbt_id, modname,
1364 name, FBT_PROBENAME_ENTRY, 1, fbt);
1365 fbt->fbtp_patchval = FBT_BAA(instr, tramp.fbtt_va);
1367 if (!fbt_patch_entry(instr, fbt->fbtp_id,
1375 fbt->fbtp_patchpoint =
1378 fbt->fbtp_savedval = *instr;
1380 fbt->fbtp_loadcnt = ctl->mod_loadcnt;
1381 fbt->fbtp_primary = primary;
1382 fbt->fbtp_symndx = i;
1406 fbt = kmem_zalloc(sizeof (fbt_probe_t), KM_SLEEP);
1407 fbt->fbtp_name = name;
1408 fbt->fbtp_ctl = ctl;
1411 fbt->fbtp_id = dtrace_probe_create(fbt_id, modname,
1412 name, FBT_PROBENAME_RETURN, 1, fbt);
1414 retfbt->fbtp_next = fbt;
1415 fbt->fbtp_id = retfbt->fbtp_id;
1418 fbt->fbtp_return = 1;
1419 retfbt = fbt;
1421 if ((fbt->fbtp_patchval = (*patch)(instr, base, limit, offset,
1422 fbt->fbtp_id, &tramp, name)) == FBT_ILLTRAP) {
1428 fbt->fbtp_patchpoint = (uint32_t *)((uintptr_t)mp->textwin +
1430 fbt->fbtp_savedval = *instr;
1431 fbt->fbtp_loadcnt = ctl->mod_loadcnt;
1432 fbt->fbtp_primary = primary;
1433 fbt->fbtp_symndx = i;
1467 fbt_probe_t *fbt = parg, *next;
1468 struct modctl *ctl = fbt->fbtp_ctl;
1471 if (ctl != NULL && ctl->mod_loadcnt == fbt->fbtp_loadcnt) {
1472 if ((ctl->mod_loadcnt == fbt->fbtp_loadcnt &&
1473 ctl->mod_loaded) || fbt->fbtp_primary) {
1479 next = fbt->fbtp_next;
1480 kmem_free(fbt, sizeof (fbt_probe_t));
1481 fbt = next;
1482 } while (fbt != NULL);
1489 fbt_probe_t *fbt = parg, *f;
1490 struct modctl *ctl = fbt->fbtp_ctl;
1494 for (f = fbt; f != NULL; f = f->fbtp_next) {
1501 cmn_err(CE_NOTE, "fbt is failing for probe %s "
1503 fbt->fbtp_name, ctl->mod_modname);
1514 if (!fbt->fbtp_primary && !ctl->mod_loaded) {
1516 cmn_err(CE_NOTE, "fbt is failing for probe %s "
1518 fbt->fbtp_name, ctl->mod_modname);
1529 if (ctl->mod_loadcnt != fbt->fbtp_loadcnt) {
1531 cmn_err(CE_NOTE, "fbt is failing for probe %s "
1533 fbt->fbtp_name, ctl->mod_modname);
1539 for (; fbt != NULL; fbt = fbt->fbtp_next)
1540 *fbt->fbtp_patchpoint = fbt->fbtp_patchval;
1549 fbt_probe_t *fbt = parg, *f;
1550 struct modctl *ctl = fbt->fbtp_ctl;
1555 for (f = fbt; f != NULL; f = f->fbtp_next) {
1560 if ((!fbt->fbtp_primary && !ctl->mod_loaded) ||
1561 (ctl->mod_loadcnt != fbt->fbtp_loadcnt))
1564 for (; fbt != NULL; fbt = fbt->fbtp_next)
1565 *fbt->fbtp_patchpoint = fbt->fbtp_savedval;
1572 fbt_probe_t *fbt = parg;
1573 struct modctl *ctl = fbt->fbtp_ctl;
1575 if (!fbt->fbtp_primary && !ctl->mod_loaded)
1578 if (ctl->mod_loadcnt != fbt->fbtp_loadcnt)
1583 for (; fbt != NULL; fbt = fbt->fbtp_next)
1584 *fbt->fbtp_patchpoint = fbt->fbtp_savedval;
1591 fbt_probe_t *fbt = parg;
1592 struct modctl *ctl = fbt->fbtp_ctl;
1594 if (!fbt->fbtp_primary && !ctl->mod_loaded)
1597 if (ctl->mod_loadcnt != fbt->fbtp_loadcnt)
1602 for (; fbt != NULL; fbt = fbt->fbtp_next)
1603 *fbt->fbtp_patchpoint = fbt->fbtp_patchval;
1610 fbt_probe_t *fbt = parg;
1611 struct modctl *ctl = fbt->fbtp_ctl;
1620 if (!ctl->mod_loaded || (ctl->mod_loadcnt != fbt->fbtp_loadcnt))
1623 if (fbt->fbtp_return && desc->dtargd_ndx == 0) {
1668 if (ctf_func_info(fp, fbt->fbtp_symndx, &f) == CTF_ERR)
1671 if (fbt->fbtp_return) {
1681 if (ctf_func_args(fp, fbt->fbtp_symndx, argc, argv) == CTF_ERR)
1732 if (ddi_create_minor_node(devi, "fbt", S_IFCHR, 0,
1734 dtrace_register("fbt", &fbt_attr, DTRACE_PRIV_KERNEL, NULL,