/* ARGSUSED */ int os_op_switch2llcallchain(cmd_t *cmd1, boolean_t smpl) { cmd_llcallchain_t *cmd = (cmd_llcallchain_t *)cmd1; page_t *cur = page_current_get(); dyn_lat_t *dyn; win_reg_t *data_reg; lat_line_t *lines; int i; dyn = (dyn_lat_t *)(cur->dyn_win.dyn); data_reg = &dyn->data; if ((lines = (lat_line_t *)(data_reg->buf)) == NULL) { return (-1); } if ((i = data_reg->scroll.highlight) == -1) { return (-1); } cmd->pid = dyn->pid; cmd->lwpid = dyn->lwpid; cmd->addr = lines[i].bufaddr.addr; cmd->size = lines[i].bufaddr.size; return (op_page_next(cmd1, smpl)); }
int os_op_switch2ll(cmd_t *cmd, boolean_t smpl) { page_t *cur = page_current_get(); int type = PAGE_WIN_TYPE(cur); switch (type) { case WIN_TYPE_MONIPROC: CMD_LAT(cmd)->pid = DYN_MONI_PROC(cur)->pid; CMD_LAT(cmd)->lwpid = 0; break; case WIN_TYPE_MONILWP: CMD_LAT(cmd)->pid = DYN_MONI_LWP(cur)->pid; CMD_LAT(cmd)->lwpid = DYN_MONI_LWP(cur)->lwpid; break; default: return (-1); } return (op_page_next(cmd, smpl)); }
static int op_home(cmd_t *cmd, boolean_t smpl) { page_list_fini(); return (op_page_next(cmd, smpl)); }