Lines Matching refs:ui
305 static int read_unwind_spec_eh_frame(struct dso *dso, struct unwind_info *ui, in read_unwind_spec_eh_frame() argument
314 fd = dso__data_get_fd(dso, ui->machine); in read_unwind_spec_eh_frame()
328 maps__for_each_entry(ui->thread->maps, map) { in read_unwind_spec_eh_frame()
335 ret = unwind_spec_ehframe(dso, ui->machine, dso->data.eh_frame_hdr_offset, in read_unwind_spec_eh_frame()
413 static struct map *find_map(unw_word_t ip, struct unwind_info *ui) in find_map() argument
416 return thread__find_map(ui->thread, PERF_RECORD_MISC_USER, ip, &al); in find_map()
423 struct unwind_info *ui = arg; in find_proc_info() local
429 map = find_map(ip, ui); in find_proc_info()
436 if (!read_unwind_spec_eh_frame(map->dso, ui, in find_proc_info()
453 !read_unwind_spec_debug_frame(map->dso, ui->machine, &segbase)) { in find_proc_info()
454 int fd = dso__data_get_fd(map->dso, ui->machine); in find_proc_info()
510 static int access_dso_mem(struct unwind_info *ui, unw_word_t addr, in access_dso_mem() argument
516 map = find_map(addr, ui); in access_dso_mem()
525 size = dso__data_read_addr(map->dso, map, ui->machine, in access_dso_mem()
535 struct unwind_info *ui = arg; in access_mem() local
536 struct stack_dump *stack = &ui->sample->user_stack; in access_mem()
542 if (__write || !stack || !ui->sample->user_regs.regs) { in access_mem()
547 ret = perf_reg_value(&start, &ui->sample->user_regs, in access_mem()
559 ret = access_dso_mem(ui, addr, valp); in access_mem()
581 struct unwind_info *ui = arg; in access_reg() local
591 if (!ui->sample->user_regs.regs) { in access_reg()
600 ret = perf_reg_value(&val, &ui->sample->user_regs, id); in access_reg()
602 if (!ui->best_effort) in access_reg()
688 static int get_entries(struct unwind_info *ui, unwind_entry_cb_t cb, in get_entries() argument
697 ret = perf_reg_value(&val, &ui->sample->user_regs, in get_entries()
709 WARN_ONCE(!ui->thread, "WARNING: ui->thread is NULL"); in get_entries()
710 addr_space = ui->thread->maps->addr_space; in get_entries()
715 ret = unw_init_remote(&c, addr_space, ui); in get_entries()
716 if (ret && !ui->best_effort) in get_entries()
746 ret = ips[j] ? entry(ips[j], ui->thread, cb, arg) : 0; in get_entries()
757 struct unwind_info ui = { in _unwind__get_entries() local
770 return get_entries(&ui, cb, arg, max_stack); in _unwind__get_entries()