Lines Matching refs:jc

174 dtj_get_java_consumer(JNIEnv *jenv, jobject caller, dtj_java_consumer_t *jc)
198 bzero(jc, sizeof (dtj_java_consumer_t));
201 jc->dtjj_consumer = consumer;
204 jc->dtjj_caller = caller;
205 jc->dtjj_jenv = jenv;
396 dtj_add_program(dtj_java_consumer_t *jc, dtj_program_t *p)
398 JNIEnv *jenv = jc->dtjj_jenv;
421 uu_list_numnodes(jc->dtjj_consumer->dtjc_program_list));
423 if (!dtj_list_add(jc->dtjj_consumer->dtjc_program_list, p)) {
438 dtj_get_program_info(dtj_java_consumer_t *jc, dtrace_proginfo_t *pinfo)
440 JNIEnv *jenv = jc->dtjj_jenv;
446 minProbeAttributes = dtj_new_attribute(jc, &pinfo->dpi_descattr);
450 minStatementAttributes = dtj_new_attribute(jc, &pinfo->dpi_stmtattr);
592 dtj_java_consumer_t jc;
593 jc.dtjj_jenv = env;
594 dtj_throw_dtrace_exception(&jc, dtrace_errmsg(NULL, err));
622 dtj_cflag(dtj_java_consumer_t *jc, const char *opt, boolean_t *get,
626 uint_t *flags = &jc->dtjj_consumer->dtjc_cflags;
656 (jc->dtjj_consumer->dtjc_state != DTJ_CONSUMER_INIT)) {
657 dtj_throw_illegal_state(jc->dtjj_jenv,
674 dtj_java_consumer_t jc;
682 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
685 dtp = jc.dtjj_consumer->dtjc_dtp;
708 prog, DTRACE_PROBESPEC_NAME, jc.dtjj_consumer->dtjc_cflags,
710 dtj_throw_dtrace_exception(&jc,
721 jprogram = dtj_add_program(&jc, p);
734 dtj_java_consumer_t jc;
742 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
745 dtp = jc.dtjj_consumer->dtjc_dtp;
749 dtj_throw_dtrace_exception(&jc, "failed to open %s", file);
772 fp, jc.dtjj_consumer->dtjc_cflags, argc, argv)) == NULL) {
773 dtj_throw_dtrace_exception(&jc,
786 jprogram = dtj_add_program(&jc, p);
797 dtj_java_consumer_t jc;
805 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
808 dtp = jc.dtjj_consumer->dtjc_dtp;
814 if (dtj_list_empty(jc.dtjj_consumer->dtjc_program_list)) {
819 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_program_list, 0);
834 dtj_throw_dtrace_exception(&jc,
857 programInfo = dtj_get_program_info(&jc, pinfo);
875 dtj_java_consumer_t jc;
885 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
888 dtp = jc.dtjj_consumer->dtjc_dtp;
892 if (dtj_list_empty(jc.dtjj_consumer->dtjc_program_list)) {
897 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_program_list, 0);
909 programInfo = dtj_get_program_info(&jc, pinfo);
926 dtj_java_consumer_t jc;
931 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
965 if (dtj_cflag(&jc, opt, NULL, &on)) {
978 if (jc.dtjj_consumer->dtjc_state != DTJ_CONSUMER_INIT) {
987 &jc.dtjj_consumer->dtjc_request_list_lock);
990 if (!dtj_list_add(jc.dtjj_consumer->dtjc_request_list,
997 &jc.dtjj_consumer->dtjc_request_list_lock);
999 dtrace_hdl_t *dtp = jc.dtjj_consumer->dtjc_dtp;
1001 dtj_throw_dtrace_exception(&jc, dtrace_errmsg(dtp,
1019 dtj_java_consumer_t jc;
1025 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1028 dtp = jc.dtjj_consumer->dtjc_dtp;
1041 if (dtj_cflag(&jc, opt, &cflag, NULL)) {
1047 dtj_throw_dtrace_exception(&jc,
1064 dtj_java_consumer_t jc;
1068 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1072 if (dtj_list_empty(jc.dtjj_consumer->dtjc_program_list)) {
1077 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_program_list, 0);
1107 dtj_java_consumer_t jc;
1111 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1115 if (dtj_list_empty(jc.dtjj_consumer->dtjc_program_list)) {
1119 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_program_list, 0);
1137 dtj_java_consumer_t jc;
1140 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1143 dtp = jc.dtjj_consumer->dtjc_dtp;
1145 if (dtj_set_callback_handlers(&jc) != DTJ_OK) {
1150 dtj_throw_dtrace_exception(&jc,
1156 jc.dtjj_consumer->dtjc_state = DTJ_CONSUMER_GO;
1167 dtj_java_consumer_t jc;
1170 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1173 dtp = jc.dtjj_consumer->dtjc_dtp;
1176 dtj_throw_dtrace_exception(&jc,
1178 dtrace_errmsg(jc.dtjj_consumer->dtjc_dtp,
1179 dtrace_errno(jc.dtjj_consumer->dtjc_dtp)));
1181 jc.dtjj_consumer->dtjc_state = DTJ_CONSUMER_STOP;
1189 dtj_java_consumer_t jc;
1192 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1195 dtp = jc.dtjj_consumer->dtjc_dtp;
1196 jc.dtjj_consumer->dtjc_state = DTJ_CONSUMER_START;
1198 if (dtj_java_consumer_init(env, &jc) != DTJ_OK) {
1209 (void) pthread_setspecific(g_dtj_consumer_key, &jc);
1211 if (jc.dtjj_consumer->dtjc_process_list != NULL) {
1217 dtj_java_consumer_fini(env, &jc);
1222 dtj_java_consumer_fini(env, &jc);
1226 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_process_list,
1236 dtj_java_consumer_fini(env, &jc);
1244 (void) dtj_consume(&jc);
1246 dtj_java_consumer_fini(env, &jc);
1254 dtj_stop(&jc);
1264 dtj_java_consumer_t jc;
1266 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1270 jc.dtjj_consumer->dtjc_interrupt = B_TRUE;
1279 dtj_java_consumer_t jc;
1282 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1285 dtp = jc.dtjj_consumer->dtjc_dtp;
1293 if (jc.dtjj_consumer->dtjc_process_list != NULL) {
1296 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_process_list,
1344 dtj_java_consumer_t jc;
1354 if (dtj_get_java_consumer(jenv, caller, &jc) != DTJ_OK) {
1357 dtp = jc.dtjj_consumer->dtjc_dtp;
1394 dtj_java_consumer_t jc;
1404 if (dtj_get_java_consumer(jenv, caller, &jc) != DTJ_OK) {
1407 dtp = jc.dtjj_consumer->dtjc_dtp;
1441 dtj_java_consumer_t jc;
1445 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1449 if (dtj_java_consumer_init(env, &jc) != DTJ_OK) {
1452 jc.dtjj_aggregate_spec = spec;
1461 (void) pthread_setspecific(g_dtj_consumer_key, &jc);
1462 aggregate = dtj_get_aggregate(&jc);
1465 jc.dtjj_consumer->dtjc_interrupt = B_TRUE;
1471 dtj_java_consumer_fini(env, &jc);
1484 dtj_java_consumer_t jc;
1490 if (dtj_get_java_consumer(jenv, caller, &jc) != DTJ_OK) {
1493 dtp = jc.dtjj_consumer->dtjc_dtp;
1495 if (jc.dtjj_consumer->dtjc_process_list == NULL) {
1496 jc.dtjj_consumer->dtjc_process_list = dtj_pointer_list_create();
1497 if (!jc.dtjj_consumer->dtjc_process_list) {
1513 dtj_throw_dtrace_exception(&jc, dtrace_errmsg(dtp,
1518 if (!dtj_pointer_list_add(jc.dtjj_consumer->dtjc_process_list, P)) {
1534 dtj_java_consumer_t jc;
1538 if (dtj_get_java_consumer(jenv, caller, &jc) != DTJ_OK) {
1541 dtp = jc.dtjj_consumer->dtjc_dtp;
1543 if (jc.dtjj_consumer->dtjc_process_list == NULL) {
1544 jc.dtjj_consumer->dtjc_process_list = dtj_pointer_list_create();
1545 if (jc.dtjj_consumer->dtjc_process_list == NULL) {
1554 dtj_throw_dtrace_exception(&jc, dtrace_errmsg(dtp,
1559 if (!dtj_pointer_list_add(jc.dtjj_consumer->dtjc_process_list, P)) {
1599 dtj_java_consumer_t jc;
1606 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1609 dtp = jc.dtjj_consumer->dtjc_dtp;
1611 jc.dtjj_probelist = list;
1639 dtj_throw_dtrace_exception(&jc,
1649 (void) dtrace_probe_iter(dtp, pdp, func, &jc);
1660 dtj_java_consumer_t *jc = arg;
1661 JNIEnv *jenv = jc->dtjj_jenv;
1665 jprobedesc = dtj_new_probedesc(jc, pdp);
1671 (*jenv)->CallVoidMethod(jenv, jc->dtjj_probelist, g_listadd_jm,
1686 dtj_java_consumer_t *jc = arg;
1687 JNIEnv *jenv = jc->dtjj_jenv;
1694 jprobedesc = dtj_new_probedesc(jc, pdp);
1707 jprobeinfo = dtj_new_probeinfo(jc, &p);
1724 (*jenv)->CallVoidMethod(jenv, jc->dtjj_probelist, g_listadd_jm,
1739 dtj_java_consumer_t *jc = arg;
1742 if (edp == jc->dtjj_consumer->dtjc_last_probe) {
1747 jc->dtjj_consumer->dtjc_plistfunc, arg) != 0) {
1748 dtj_throw_dtrace_exception(jc,
1756 jc->dtjj_consumer->dtjc_last_probe = edp;
1782 dtj_java_consumer_t jc;
1790 if (dtj_get_java_consumer(env, obj, &jc) != DTJ_OK) {
1793 dtp = jc.dtjj_consumer->dtjc_dtp;
1794 jc.dtjj_probelist = list;
1802 if (dtj_list_empty(jc.dtjj_consumer->dtjc_program_list)) {
1813 jc.dtjj_consumer->dtjc_plistfunc = func;
1815 itr = uu_list_walk_start(jc.dtjj_consumer->dtjc_program_list, 0);
1823 (dtrace_stmt_f *)dtj_list_stmt, &jc);