Lines Matching refs:domid
21 int libxl__domain_rename(libxl__gc *gc, uint32_t domid, in libxl__domain_rename() argument
40 dom_path = libxl__xs_get_dompath(gc, domid); in libxl__domain_rename()
46 stub_dm_domid = libxl_get_stubdom_id(CTX, domid); in libxl__domain_rename()
56 LOGEVD(ERROR, errno, domid, "Create xs transaction for domain (re)name"); in libxl__domain_rename()
62 LOGD(ERROR, domid, "New domain name not specified"); in libxl__domain_rename()
74 LOGD(ERROR, domid, "Unexpected error checking for existing domain"); in libxl__domain_rename()
76 } else if (domid_e == domid) { in libxl__domain_rename()
81 LOGD(ERROR, domid, "Domain with name \"%s\" already exists.", new_name); in libxl__domain_rename()
90 LOGEVD(ERROR, errno, domid, in libxl__domain_rename()
96 LOGD(ERROR, domid, in libxl__domain_rename()
107 LOGD(ERROR, domid, in libxl__domain_rename()
116 rc = libxl_domain_info(ctx, &info, domid); in libxl__domain_rename()
131 LOGED(ERROR, domid, "Unable to rename stub-domain"); in libxl__domain_rename()
140 LOGD(ERROR, domid, in libxl__domain_rename()
147 LOGD(DEBUG, domid, in libxl__domain_rename()
167 int libxl_domain_rename(libxl_ctx *ctx, uint32_t domid, in libxl_domain_rename() argument
172 rc = libxl__domain_rename(gc, domid, old_name, new_name, XBT_NULL); in libxl_domain_rename()
181 int libxl_domain_resume(libxl_ctx *ctx, uint32_t domid, int suspend_cancel, in libxl_domain_resume() argument
184 AO_CREATE(ctx, domid, ao_how); in libxl_domain_resume()
189 dmrs->domid = domid; in libxl_domain_resume()
209 int libxl_domain_preserve(libxl_ctx *ctx, uint32_t domid, in libxl_domain_preserve() argument
234 dom_path = libxl__xs_get_dompath(gc, domid); in libxl_domain_preserve()
248 roperm[1].id = domid; in libxl_domain_preserve()
259 rc = libxl__domain_rename(gc, domid, info->name, preserved_name, t); in libxl_domain_preserve()
282 xlinfo->domid = xcinfo->domain; in libxl__xcinfo2xlinfo()
319 uint32_t domid = 0; in libxl_list_domain() local
324 while ((ret = xc_domain_getinfolist(ctx->xch, domid, 1024, info)) > 0) { in libxl_list_domain()
329 domid = info[ret - 1].domain + 1; in libxl_list_domain()
346 uint32_t domid) { in libxl_domain_info() argument
351 ret = xc_domain_getinfolist(ctx->xch, domid, 1, &xcinfo); in libxl_domain_info()
353 LOGED(ERROR, domid, "Getting domain info list"); in libxl_domain_info()
357 if (ret==0 || xcinfo.domain != domid) { in libxl_domain_info()
389 if (libxl_is_stubdom(ctx, info[i].domid, NULL)) in libxl_list_vm()
392 ptr[idx].domid = info[i].domid; in libxl_list_vm()
408 uint32_t domid, int send_fd, int recv_fd, in libxl_domain_remus_start() argument
411 AO_CREATE(ctx, domid, ao_how); in libxl_domain_remus_start()
415 libxl_domain_type type = libxl__domain_type(gc, domid); in libxl_domain_remus_start()
423 LOGD(ERROR, domid, "Colo mode must be enabled/disabled"); in libxl_domain_remus_start()
437 LOGD(ERROR, domid, "Cannot use memory checkpoint " in libxl_domain_remus_start()
447 LOGD(ERROR, domid, "Unsafe mode must be enabled to replicate to /dev/null," in libxl_domain_remus_start()
457 dss->domid = domid; in libxl_domain_remus_start()
508 int libxl_domain_suspend(libxl_ctx *ctx, uint32_t domid, int fd, int flags, in libxl_domain_suspend() argument
511 AO_CREATE(ctx, domid, ao_how); in libxl_domain_suspend()
514 libxl_domain_type type = libxl__domain_type(gc, domid); in libxl_domain_suspend()
526 dss->domid = domid; in libxl_domain_suspend()
552 int libxl_domain_suspend_only(libxl_ctx *ctx, uint32_t domid, in libxl_domain_suspend_only() argument
555 AO_CREATE(ctx, domid, ao_how); in libxl_domain_suspend_only()
559 libxl_domain_type type = libxl__domain_type(gc, domid); in libxl_domain_suspend_only()
567 dsps->domid = domid; in libxl_domain_suspend_only()
579 int libxl_domain_pause(libxl_ctx *ctx, uint32_t domid, in libxl_domain_pause() argument
582 AO_CREATE(ctx, domid, ao_how); in libxl_domain_pause()
584 r = xc_domain_pause(ctx->xch, domid); in libxl_domain_pause()
586 LOGED(ERROR, domid, "Pausing domain"); in libxl_domain_pause()
593 int libxl_domain_core_dump(libxl_ctx *ctx, uint32_t domid, in libxl_domain_core_dump() argument
597 AO_CREATE(ctx, domid, ao_how); in libxl_domain_core_dump()
600 ret = xc_domain_dumpcore(ctx->xch, domid, filename); in libxl_domain_core_dump()
602 LOGED(ERROR, domid, "Core dumping domain to %s", filename); in libxl_domain_core_dump()
615 int libxl__domain_unpause_deprecated(libxl__gc *gc, libxl_domid domid) in libxl__domain_unpause_deprecated() argument
619 libxl_domain_type type = libxl__domain_type(gc, domid); in libxl__domain_unpause_deprecated()
626 rc = libxl__domain_resume_device_model_deprecated(gc, domid); in libxl__domain_unpause_deprecated()
628 LOGD(ERROR, domid, in libxl__domain_unpause_deprecated()
633 r = xc_domain_unpause(CTX->xch, domid); in libxl__domain_unpause_deprecated()
635 LOGED(ERROR, domid, "Unpausing domain"); in libxl__domain_unpause_deprecated()
655 libxl_domid domid = dmrs->domid; in libxl__domain_unpause() local
657 libxl_domain_type type = libxl__domain_type(gc, domid); in libxl__domain_unpause()
681 libxl_domid domid = dmrs->domid; in domain_unpause_done() local
685 r = xc_domain_unpause(CTX->xch, domid); in domain_unpause_done()
687 LOGED(ERROR, domid, "Unpausing domain"); in domain_unpause_done()
700 int libxl_domain_unpause(libxl_ctx *ctx, uint32_t domid, in libxl_domain_unpause() argument
703 AO_CREATE(ctx, domid, ao_how); in libxl_domain_unpause()
708 dmrs->domid = domid; in libxl_domain_unpause()
723 int libxl__domain_pvcontrol_available(libxl__gc *gc, uint32_t domid) in libxl__domain_pvcontrol_available() argument
730 libxl_domain_type domtype = libxl__domain_type(gc, domid); in libxl__domain_pvcontrol_available()
737 ret = xc_hvm_param_get(ctx->xch, domid, HVM_PARAM_CALLBACK_IRQ, &pvdriver); in libxl__domain_pvcontrol_available()
739 LOGED(ERROR, domid, "Getting HVM callback IRQ"); in libxl__domain_pvcontrol_available()
745 const char *libxl__domain_pvcontrol_xspath(libxl__gc *gc, uint32_t domid) in libxl__domain_pvcontrol_xspath() argument
749 dom_path = libxl__xs_get_dompath(gc, domid); in libxl__domain_pvcontrol_xspath()
757 uint32_t domid) in libxl__domain_pvcontrol_read() argument
761 shutdown_path = libxl__domain_pvcontrol_xspath(gc, domid); in libxl__domain_pvcontrol_read()
769 domid_t domid, const char *cmd) in libxl__domain_pvcontrol() argument
775 rc = libxl__domain_pvcontrol_available(gc, domid); in libxl__domain_pvcontrol()
782 shutdown_path = libxl__domain_pvcontrol_xspath(gc, domid); in libxl__domain_pvcontrol()
812 int libxl_domain_shutdown(libxl_ctx *ctx, uint32_t domid, in libxl_domain_shutdown() argument
815 AO_CREATE(ctx, domid, ao_how); in libxl_domain_shutdown()
822 rc = libxl__domain_pvcontrol(egc, pvcontrol, domid, "poweroff"); in libxl_domain_shutdown()
827 int libxl_domain_reboot(libxl_ctx *ctx, uint32_t domid, in libxl_domain_reboot() argument
830 AO_CREATE(ctx, domid, ao_how); in libxl_domain_reboot()
837 rc = libxl__domain_pvcontrol(egc, pvcontrol, domid, "reboot"); in libxl_domain_reboot()
867 LOGD(DEBUG, evg->domid, "%s", why); in domain_death_occurred()
872 libxl_event *ev = NEW_EVENT(egc, DOMAIN_DEATH, evg->domid, evg->user); in domain_death_occurred()
898 rc = xc_domain_getinfolist(CTX->xch, evg->domid, nentries, domaininfos); in domain_death_xswatch_callback()
907 LOGD(DEBUG, evg->domid, "[evg=%p] nentries=%d rc=%d %ld..%ld", in domain_death_xswatch_callback()
918 LOGD(DEBUG, evg->domid, "[evg=%p]" in domain_death_xswatch_callback()
933 if (got->domain > evg->domid) { in domain_death_xswatch_callback()
940 if (got->domain < evg->domid) { in domain_death_xswatch_callback()
945 assert(evg->domid == got->domain); in domain_death_xswatch_callback()
946 LOGD(DEBUG, evg->domid, "Exists shutdown_reported=%d"" dominf.flags=%x", in domain_death_xswatch_callback()
981 int libxl_evenable_domain_death(libxl_ctx *ctx, uint32_t domid, in libxl_evenable_domain_death() argument
991 evg->domid = domid; in libxl_evenable_domain_death()
995 evg->domid > evg_search->domid); in libxl_evenable_domain_death()
1042 int libxl_domain_destroy(libxl_ctx *ctx, uint32_t domid, in libxl_domain_destroy() argument
1045 AO_CREATE(ctx, domid, ao_how); in libxl_domain_destroy()
1050 dds->domid = domid; in libxl_domain_destroy()
1063 LOGD(ERROR, dds->domid, "Destruction of domain failed"); in domain_destroy_cb()
1084 uint32_t stubdomid = libxl_get_stubdom_id(CTX, dds->domid); in libxl__domain_destroy()
1088 dds->stubdom.domid = stubdomid; in libxl__domain_destroy()
1097 dds->domain.domid = dds->domid; in libxl__domain_destroy()
1112 LOGD(ERROR, dds->domain.domid, "Unable to destroy stubdom with domid %u", in stubdom_destroy_callback()
1113 dis->domid); in stubdom_destroy_callback()
1118 savefile = libxl__device_model_savefile(gc, dis->domid); in stubdom_destroy_callback()
1121 LOGD(ERROR, dds->domain.domid, "Failed to remove device-model savefile %s", in stubdom_destroy_callback()
1136 LOGD(ERROR, dis->domid, "Unable to destroy guest"); in domain_destroy_callback()
1172 uint32_t domid = dis->domid; in libxl__destroy_domid() local
1177 rc = libxl_domain_info(CTX, NULL, domid); in libxl__destroy_domid()
1182 LOGD(ERROR, domid, "Non-existant domain"); in libxl__destroy_domid()
1189 libxl__device_pci_destroy_all(egc, domid, &dis->multidev); in libxl__destroy_domid()
1209 libxl_domid domid = dis->domid; in destroy_domid_pci_done() local
1212 LOGD(ERROR, domid, "Pci shutdown failed"); in destroy_domid_pci_done()
1216 r = xc_domain_pause(CTX->xch, domid); in destroy_domid_pci_done()
1218 LOGEVD(ERROR, r, domid, "xc_domain_pause failed"); in destroy_domid_pci_done()
1222 switch (libxl__domain_type(gc, domid)) { in destroy_domid_pci_done()
1224 if (libxl_get_stubdom_id(CTX, domid)) { in destroy_domid_pci_done()
1231 dm_present = libxl__dm_active(gc, domid); in destroy_domid_pci_done()
1242 dis->ddms.domid = domid; in destroy_domid_pci_done()
1264 uint32_t domid = dis->domid; in dm_destroy_cb() local
1268 LOGD(ERROR, domid, "libxl__destroy_device_model failed"); in dm_destroy_cb()
1270 if (libxl_is_stubdom(CTX, domid, &target_domid) && in dm_destroy_cb()
1272 char *path = GCSPRINTF("/local/domain/%d/image/qmp-proxy-pid", domid); in dm_destroy_cb()
1280 dis->drs.domid = domid; in dm_destroy_cb()
1378 unsigned long *sec, unsigned int *domid) in libxl__read_recent() argument
1381 *domid = INVALID_DOMID; in libxl__read_recent()
1386 int r = fscanf(ctxt->f, "%lu %u", sec, domid); in libxl__read_recent()
1394 *domid = INVALID_DOMID; in libxl__read_recent()
1396 } else if (r == 2 && libxl_domid_valid_guest(*domid) && in libxl__read_recent()
1405 static int libxl__mark_domid_recent(libxl__gc *gc, uint32_t domid) in libxl__mark_domid_recent() argument
1415 LOGED(ERROR, domid, "failed to acquire lock"); in libxl__mark_domid_recent()
1426 LOGED(ERROR, domid, "failed to open '%s'", new); in libxl__mark_domid_recent()
1442 LOGED(ERROR, domid, "failed to write to '%s'", new); in libxl__mark_domid_recent()
1447 r = fprintf(nf, "%lu %u\n", ctxt.ts.tv_sec, domid); in libxl__mark_domid_recent()
1449 LOGED(ERROR, domid, "failed to write to '%s'", new); in libxl__mark_domid_recent()
1456 LOGED(ERROR, domid, "failed to close '%s'", new); in libxl__mark_domid_recent()
1477 int libxl__is_domid_recent(libxl__gc *gc, uint32_t domid, bool *recent) in libxl__is_domid_recent() argument
1496 if (val == domid && ctxt.ts.tv_sec - sec <= ctxt.timeout) { in libxl__is_domid_recent()
1517 uint32_t domid = dis->domid; in devices_destroy_cb() local
1522 dom_path = libxl__xs_get_dompath(gc, domid); in devices_destroy_cb()
1529 LOGD(ERROR, domid, "libxl__devices_destroy failed"); in devices_destroy_cb()
1534 LOGED(ERROR, domid, "xs_rm failed for %s", vm_path); in devices_destroy_cb()
1537 LOGED(ERROR, domid, "xs_rm failed for %s", dom_path); in devices_destroy_cb()
1539 xs_rm(ctx->xsh, XBT_NULL, libxl__xs_libxl_path(gc, domid)); in devices_destroy_cb()
1540 xs_rm(ctx->xsh, XBT_NULL, GCSPRINTF( "/local/domain/%d/hvmloader", domid)); in devices_destroy_cb()
1543 lock = libxl__lock_domain_userdata(gc, domid); in devices_destroy_cb()
1548 libxl__userdata_destroyall(gc, domid); in devices_destroy_cb()
1559 libxl__device_model_savefile(gc, domid)); in devices_destroy_cb()
1563 GCSPRINTF(LIBXL_DEVICE_MODEL_RESTORE_FILE".%u", domid)); in devices_destroy_cb()
1573 rc = libxl__mark_domid_recent(gc, domid); in devices_destroy_cb()
1575 rc = xc_domain_destroy(ctx->xch, domid); in devices_destroy_cb()
1577 rc = xc_domain_pause(ctx->xch, domid); in devices_destroy_cb()
1579 rc = xc_domain_soft_reset(ctx->xch, domid); in devices_destroy_cb()
1581 rc = xc_domain_unpause(ctx->xch, domid); in devices_destroy_cb()
1590 LOGED(ERROR, domid, in devices_destroy_cb()
1596 LOGD(DEBUG, domid, "Forked pid %ld for destroy of domain", (long)rc); in devices_destroy_cb()
1615 LOGEVD(ERROR, WEXITSTATUS(status), dis->domid, in domain_destroy_domid_cb()
1630 int libxl__get_domid(libxl__gc *gc, uint32_t *domid) in libxl__get_domid() argument
1643 *domid = atoi(xs_domid); in libxl__get_domid()
1649 int libxl__resolve_domid(libxl__gc *gc, const char *name, uint32_t *domid) in libxl__resolve_domid() argument
1653 return libxl_domain_qualifier_to_domid(CTX, name, domid); in libxl__resolve_domid()
1656 libxl_vcpuinfo *libxl_list_vcpu(libxl_ctx *ctx, uint32_t domid, in libxl_list_vcpu() argument
1664 if (xc_domain_getinfolist(ctx->xch, domid, 1, &domaininfo) != 1) { in libxl_list_vcpu()
1665 LOGED(ERROR, domid, "Getting infolist"); in libxl_list_vcpu()
1688 if (xc_vcpu_getinfo(ctx->xch, domid, *nr_vcpus_out, &vcpuinfo) == -1) { in libxl_list_vcpu()
1689 LOGED(ERROR, domid, "Getting vcpu info"); in libxl_list_vcpu()
1693 if (xc_vcpu_getaffinity(ctx->xch, domid, *nr_vcpus_out, in libxl_list_vcpu()
1696 LOGED(ERROR, domid, "Getting vcpu affinity"); in libxl_list_vcpu()
1717 static int libxl__set_vcpuonline_xenstore(libxl__gc *gc, uint32_t domid, in libxl__set_vcpuonline_xenstore() argument
1725 if (!(dompath = libxl__xs_get_dompath(gc, domid))) in libxl__set_vcpuonline_xenstore()
1744 libxl_domid domid, in qmp_parse_query_cpus() argument
1761 LOGD(ERROR, domid, "Failed to retrieve CPU index."); in qmp_parse_query_cpus()
1790 int libxl_set_vcpuonline(libxl_ctx *ctx, uint32_t domid, in libxl_set_vcpuonline() argument
1794 AO_CREATE(ctx, domid, ao_how); in libxl_set_vcpuonline()
1801 svos->qmp.domid = domid; in libxl_set_vcpuonline()
1812 rc = libxl_domain_info(CTX, info, domid); in libxl_set_vcpuonline()
1814 LOGED(ERROR, domid, "Getting domain info list"); in libxl_set_vcpuonline()
1821 LOGED(ERROR, domid, "Requested 0 VCPUs!"); in libxl_set_vcpuonline()
1827 LOGED(ERROR, domid, "Requested %d VCPUs, however maxcpus is %d!", in libxl_set_vcpuonline()
1833 switch (libxl__domain_type(gc, domid)) { in libxl_set_vcpuonline()
1835 switch (libxl__device_model_version_running(gc, domid)) { in libxl_set_vcpuonline()
1879 rc = qmp_parse_query_cpus(gc, qmp->domid, response, ¤t_map); in set_vcpuonline_qmp_cpus_queried()
1928 LOGD(ERROR, svos->qmp.domid, in set_vcpuonline_timeout()
1941 libxl_domid domid = svos->qmp.domid; in set_vcpuonline_done() local
1944 rc = libxl__set_vcpuonline_xenstore(gc, domid, svos->cpumap, in set_vcpuonline_done()
1958 static void domain_s3_resume(libxl__ao *ao, libxl__egc *egc, int domid) in domain_s3_resume() argument
1968 qmp->domid = domid; in domain_s3_resume()
1972 switch (libxl__domain_type(gc, domid)) { in domain_s3_resume()
1974 switch (libxl__device_model_version_running(gc, domid)) { in domain_s3_resume()
1976 r = xc_hvm_param_set(CTX->xch, domid, HVM_PARAM_ACPI_S_STATE, 0); in domain_s3_resume()
1978 LOGED(ERROR, domid, "Send trigger '%s' failed", in domain_s3_resume()
2008 LOGD(ERROR, qmp->domid, "Send trigger '%s' failed, rc=%d", in domain_s3_resume_done()
2015 int libxl_send_trigger(libxl_ctx *ctx, uint32_t domid, in libxl_send_trigger() argument
2019 AO_CREATE(ctx, domid, ao_how); in libxl_send_trigger()
2024 rc = xc_domain_send_trigger(ctx->xch, domid, in libxl_send_trigger()
2028 rc = xc_domain_send_trigger(ctx->xch, domid, in libxl_send_trigger()
2032 rc = xc_domain_send_trigger(ctx->xch, domid, in libxl_send_trigger()
2036 rc = xc_domain_send_trigger(ctx->xch, domid, in libxl_send_trigger()
2040 rc = xc_domain_send_trigger(ctx->xch, domid, in libxl_send_trigger()
2044 domain_s3_resume(ao, egc, domid); /* must be last */ in libxl_send_trigger()
2053 LOGED(ERROR, domid, "Send trigger '%s' failed", in libxl_send_trigger()
2065 uint32_t libxl_vm_get_start_time(libxl_ctx *ctx, uint32_t domid) in libxl_vm_get_start_time() argument
2068 char *dompath = libxl__xs_get_dompath(gc, domid); in libxl_vm_get_start_time()
2077 LOGEVD(ERROR, -1, domid, "Can't get start time of domain"); in libxl_vm_get_start_time()
2086 static int libxl__update_avail_vcpus_xenstore(libxl__gc *gc, uint32_t domid, in libxl__update_avail_vcpus_xenstore() argument
2094 dompath = libxl__xs_get_dompath(gc, domid); in libxl__update_avail_vcpus_xenstore()
2132 int libxl_retrieve_domain_configuration(libxl_ctx *ctx, uint32_t domid, in libxl_retrieve_domain_configuration() argument
2136 AO_CREATE(ctx, domid, ao_how); in libxl_retrieve_domain_configuration()
2142 rdcs->qmp.domid = domid; in libxl_retrieve_domain_configuration()
2149 rdcs->devlock.domid = domid; in libxl_retrieve_domain_configuration()
2165 libxl_domid domid = rdcs->qmp.domid; in retrieve_domain_configuration_lock_acquired() local
2170 lock = libxl__lock_domain_userdata(gc, domid); in retrieve_domain_configuration_lock_acquired()
2176 rc = libxl__get_domain_configuration(gc, domid, d_config); in retrieve_domain_configuration_lock_acquired()
2178 LOGD(ERROR, domid, "Fail to get domain configuration"); in retrieve_domain_configuration_lock_acquired()
2189 libxl__device_model_version_running(gc, domid) == in retrieve_domain_configuration_lock_acquired()
2223 rc = qmp_parse_query_cpus(gc, qmp->domid, response, &rdcs->qemuu_cpus); in retrieve_domain_configuration_cpu_queried()
2246 libxl_domid domid = rdcs->qmp.domid; in retrieve_domain_configuration_end() local
2250 lock = libxl__lock_domain_userdata(gc, domid); in retrieve_domain_configuration_end()
2259 domname = libxl_domid_to_name(CTX, domid); in retrieve_domain_configuration_end()
2261 LOGD(ERROR, domid, "Fail to get domain name"); in retrieve_domain_configuration_end()
2272 rc = libxl_domain_info(CTX, &info, domid); in retrieve_domain_configuration_end()
2274 LOGD(ERROR, domid, "Fail to get domain info"); in retrieve_domain_configuration_end()
2295 version = libxl__device_model_version_running(gc, domid); in retrieve_domain_configuration_end()
2302 rc = libxl__update_avail_vcpus_xenstore(gc, domid, in retrieve_domain_configuration_end()
2311 rc = libxl__update_avail_vcpus_xenstore(gc, domid, in retrieve_domain_configuration_end()
2319 LOGD(ERROR, domid, "Fail to update available cpu map"); in retrieve_domain_configuration_end()
2340 rc = libxl__get_memory_target(gc, domid, &target_memkb, &max_memkb); in retrieve_domain_configuration_end()
2342 LOGD(ERROR, domid, "Fail to get memory target"); in retrieve_domain_configuration_end()
2358 rc = libxl_domain_sched_params_get(CTX, domid, in retrieve_domain_configuration_end()
2361 LOGD(ERROR, domid, "Fail to get scheduler parameters"); in retrieve_domain_configuration_end()
2402 p = libxl__device_list(gc, dt, domid, &num); in retrieve_domain_configuration_end()
2404 LOGD(DEBUG, domid, "No %s from xenstore", in retrieve_domain_configuration_end()
2422 LOGD(WARN, domid, in retrieve_domain_configuration_end()