Lines Matching refs:hndl

81 static tnfctl_errcode_t find_test_func(tnfctl_handle_t *hndl);
82 static tnfctl_errcode_t find_target_syms(tnfctl_handle_t *hndl);
83 static tnfctl_errcode_t find_trace_file_info(tnfctl_handle_t *hndl);
84 static tnfctl_errcode_t check_trace_error(tnfctl_handle_t *hndl);
93 _tnfctl_refresh_process(tnfctl_handle_t *hndl, boolean_t *lmap_ok, in _tnfctl_refresh_process() argument
99 assert(hndl->mode != KERNEL_MODE); in _tnfctl_refresh_process()
102 LOCK(hndl, prexstat, release_lock); in _tnfctl_refresh_process()
104 prexstat = check_trace_error(hndl); in _tnfctl_refresh_process()
112 prexstat = _tnfctl_lmap_update(hndl, lmap_ok, dl_evt); in _tnfctl_refresh_process()
117 prexstat = find_test_func(hndl); in _tnfctl_refresh_process()
121 prexstat = _tnfctl_find_all_probes(hndl); in _tnfctl_refresh_process()
128 UNLOCK(hndl, release_lock); in _tnfctl_refresh_process()
137 _tnfctl_set_state(tnfctl_handle_t *hndl) in _tnfctl_set_state() argument
144 hndl->targ_pid = hndl->p_getpid(hndl->proc_p); in _tnfctl_set_state()
147 LOCK(hndl, prexstat, release_lock); in _tnfctl_set_state()
153 prexstat = _tnfctl_lmap_update(hndl, &lmap_ok, &dl_evt); in _tnfctl_set_state()
158 prexstat = find_target_syms(hndl); in _tnfctl_set_state()
164 prexstat = find_trace_file_info(hndl); in _tnfctl_set_state()
168 prexstat = find_test_func(hndl); in _tnfctl_set_state()
172 prexstat = _tnfctl_find_all_probes(hndl); in _tnfctl_set_state()
176 prexstat = check_trace_error(hndl); in _tnfctl_set_state()
181 UNLOCK(hndl, release_lock); in _tnfctl_set_state()
191 find_test_func(tnfctl_handle_t *hndl) in find_test_func() argument
196 if (hndl->mt_target == B_FALSE) { in find_test_func()
198 hndl->testfunc = hndl->nonthread_test; in find_test_func()
206 hndl->testfunc = hndl->thread_test; in find_test_func()
207 miscstat = hndl->p_read(hndl->proc_p, hndl->thread_sync, in find_test_func()
213 hndl->testfunc = hndl->nonthread_test; in find_test_func()
237 check_trace_error(tnfctl_handle_t *hndl) in check_trace_error() argument
244 miscstat = hndl->p_read(hndl->proc_p, hndl->trace_error, in check_trace_error()
250 miscstat = hndl->p_read(hndl->proc_p, trace_error_ptr, &trace_error_rec, in check_trace_error()
261 if (hndl->trace_file_name == NULL) in check_trace_error()
262 hndl->trace_buf_state = TNFCTL_BUF_NONE; in check_trace_error()
264 hndl->trace_buf_state = TNFCTL_BUF_OK; in check_trace_error()
266 hndl->trace_buf_state = TNFCTL_BUF_BROKEN; in check_trace_error()
268 hndl->trace_buf_state = TNFCTL_BUF_OK; in check_trace_error()
272 hndl->trace_state = B_FALSE; in check_trace_error()
274 hndl->trace_state = B_TRUE; in check_trace_error()
285 find_target_syms(tnfctl_handle_t *hndl) in find_target_syms() argument
291 prexstat = _tnfctl_sym_find(hndl, TRACE_ALLOC, &hndl->allocfunc); in find_target_syms()
295 prexstat = _tnfctl_sym_find(hndl, TRACE_COMMIT, &hndl->commitfunc); in find_target_syms()
299 prexstat = _tnfctl_sym_find(hndl, TRACE_END_FUNC, &hndl->endfunc); in find_target_syms()
303 prexstat = _tnfctl_sym_find(hndl, TRACE_ROLLBACK, &hndl->rollbackfunc); in find_target_syms()
307 prexstat = _tnfctl_sym_find(hndl, PROBE_LIST_HEAD, in find_target_syms()
308 &hndl->probelist_head); in find_target_syms()
312 prexstat = _tnfctl_sym_find(hndl, TRACE_ERROR, &hndl->trace_error); in find_target_syms()
316 prexstat = _tnfctl_sym_find(hndl, MEMSEG_PTR, &temp_addr); in find_target_syms()
321 miscstat = hndl->p_read(hndl->proc_p, temp_addr, &hndl->memseg_p, in find_target_syms()
322 sizeof (hndl->memseg_p)); in find_target_syms()
326 prexstat = _tnfctl_sym_find(hndl, PROBE_LIST_VALID, in find_target_syms()
327 &hndl->probelist_valid); in find_target_syms()
331 prexstat = _tnfctl_sym_find(hndl, NONTHREAD_TEST, &temp_addr); in find_target_syms()
336 miscstat = hndl->p_read(hndl->proc_p, temp_addr, &hndl->nonthread_test, in find_target_syms()
337 sizeof (hndl->nonthread_test)); in find_target_syms()
341 prexstat = _tnfctl_sym_find(hndl, THREAD_TEST, &temp_addr); in find_target_syms()
346 miscstat = hndl->p_read(hndl->proc_p, temp_addr, &hndl->thread_test, in find_target_syms()
347 sizeof (hndl->thread_test)); in find_target_syms()
351 prexstat = _tnfctl_sym_find(hndl, PROBE_THR_SYNC, &hndl->thread_sync); in find_target_syms()
355 prexstat = _tnfctl_sym_find(hndl, LIBTHREAD_PRESENT, &temp_addr); in find_target_syms()
359 hndl->mt_target = B_FALSE; in find_target_syms()
366 hndl->mt_target = B_TRUE; in find_target_syms()
385 _tnfctl_create_tracefile(tnfctl_handle_t *hndl, const char *trace_file_name, in _tnfctl_create_tracefile() argument
398 prexstat = _tnfctl_sym_find(hndl, TRACEFILE_NAME, &name_addr); in _tnfctl_create_tracefile()
404 prexstat = _tnfctl_sym_find(hndl, TRACEFILE_SIZE, &size_addr); in _tnfctl_create_tracefile()
413 prexstat = _tnfctl_readstr_targ(hndl, name_addr, &preexisting); in _tnfctl_create_tracefile()
431 if (trace_file_size < hndl->trace_min_size) { in _tnfctl_create_tracefile()
498 miscstat = hndl->p_write(hndl->proc_p, name_addr, path, in _tnfctl_create_tracefile()
502 miscstat = hndl->p_write(hndl->proc_p, size_addr, &outsize, in _tnfctl_create_tracefile()
507 hndl->trace_file_name = strdup(path); in _tnfctl_create_tracefile()
508 if (hndl->trace_file_name == NULL) in _tnfctl_create_tracefile()
510 hndl->trace_buf_size = outsize; in _tnfctl_create_tracefile()
511 hndl->trace_buf_state = TNFCTL_BUF_OK; in _tnfctl_create_tracefile()
522 find_trace_file_info(tnfctl_handle_t *hndl) in find_trace_file_info() argument
531 prexstat = _tnfctl_sym_find(hndl, TRACEFILE_NAME, &name_addr); in find_trace_file_info()
537 prexstat = _tnfctl_sym_find(hndl, TRACEFILE_SIZE, &size_addr); in find_trace_file_info()
543 prexstat = _tnfctl_sym_find(hndl, TRACEFILE_MIN, &min_addr); in find_trace_file_info()
552 prexstat = _tnfctl_readstr_targ(hndl, name_addr, &preexisting); in find_trace_file_info()
560 miscstat = hndl->p_read(hndl->proc_p, min_addr, &minoutsize, in find_trace_file_info()
564 hndl->trace_min_size = minoutsize; in find_trace_file_info()
568 hndl->trace_file_name = NULL; in find_trace_file_info()
569 hndl->trace_buf_size = 0; in find_trace_file_info()
571 hndl->trace_file_name = preexisting; in find_trace_file_info()
573 miscstat = hndl->p_read(hndl->proc_p, size_addr, in find_trace_file_info()
577 hndl->trace_buf_size = outsize; in find_trace_file_info()
623 _tnfctl_readstr_targ(tnfctl_handle_t *hndl, uintptr_t addr, char **outstr_pp) in _tnfctl_readstr_targ() argument
646 retstat = hndl->p_read(hndl->proc_p, addr + offset, buffer, in _tnfctl_readstr_targ()