Lines Matching refs:b_info

310 static void parse_vcpu_affinity(libxl_domain_build_info *b_info,  in parse_vcpu_affinity()  argument
328 if (buf || num_cpus > b_info->max_vcpus) in parse_vcpu_affinity()
329 num_cpus = b_info->max_vcpus; in parse_vcpu_affinity()
332 b_info->num_vcpu_hard_affinity = num_cpus; in parse_vcpu_affinity()
333 b_info->vcpu_hard_affinity = xmalloc(num_cpus * sizeof(libxl_bitmap)); in parse_vcpu_affinity()
334 vcpu_affinity_array = b_info->vcpu_hard_affinity; in parse_vcpu_affinity()
336 b_info->num_vcpu_soft_affinity = num_cpus; in parse_vcpu_affinity()
337 b_info->vcpu_soft_affinity = xmalloc(num_cpus * sizeof(libxl_bitmap)); in parse_vcpu_affinity()
338 vcpu_affinity_array = b_info->vcpu_soft_affinity; in parse_vcpu_affinity()
358 libxl_defbool_set(&b_info->numa_placement, false); in parse_vcpu_affinity()
371 for (i = 1; i < b_info->max_vcpus; i++) { in parse_vcpu_affinity()
381 libxl_defbool_set(&b_info->numa_placement, false); in parse_vcpu_affinity()
570 libxl_domain_build_info *b_info) in parse_vnuma_config() argument
598 b_info->num_vnuma_nodes = num_vnuma; in parse_vnuma_config()
599 b_info->vnuma_nodes = xcalloc(num_vnuma, sizeof(libxl_vnode_info)); in parse_vnuma_config()
603 if (libxl_cpu_bitmap_alloc(ctx, &vcpu_parsed[i], b_info->max_vcpus)) { in parse_vnuma_config()
609 for (i = 0; i < b_info->num_vnuma_nodes; i++) { in parse_vnuma_config()
610 libxl_vnode_info *p = &b_info->vnuma_nodes[i]; in parse_vnuma_config()
613 p->distances = xcalloc(b_info->num_vnuma_nodes, in parse_vnuma_config()
615 p->num_distances = b_info->num_vnuma_nodes; in parse_vnuma_config()
622 libxl_vnode_info *p = &b_info->vnuma_nodes[i]; in parse_vnuma_config()
665 libxl_defbool_set(&b_info->numa_placement, false); in parse_vnuma_config()
715 if (b_info->max_vcpus != 0) { in parse_vnuma_config()
716 if (b_info->max_vcpus != max_vcpus) { in parse_vnuma_config()
734 b_info->max_vcpus = max_vcpus; in parse_vnuma_config()
738 if (b_info->max_memkb != LIBXL_MEMKB_DEFAULT && in parse_vnuma_config()
739 b_info->max_memkb != max_memkb) { in parse_vnuma_config()
743 b_info->max_memkb = max_memkb; in parse_vnuma_config()
745 for (i = 0; i < b_info->num_vnuma_nodes; i++) { in parse_vnuma_config()
746 libxl_vnode_info *p = &b_info->vnuma_nodes[i]; in parse_vnuma_config()
875 libxl_domain_build_info *b_info = &d_config->b_info; in parse_config_data() local
896 &b_info->exec_ssid_label, 0); in parse_config_data()
966 libxl_domain_build_info_init_type(b_info, c_info->type); in parse_config_data()
968 if (b_info->type == LIBXL_DOMAIN_TYPE_PVH) { in parse_config_data()
969 xlu_cfg_get_defbool(config, "pvshim", &b_info->u.pvh.pvshim, 0); in parse_config_data()
972 &b_info->u.pvh.pvshim_path, 0); in parse_config_data()
975 &b_info->u.pvh.pvshim_cmdline, 0); in parse_config_data()
978 &b_info->u.pvh.pvshim_extra, 0); in parse_config_data()
982 b_info->blkdev_start = strdup(blkdev_start); in parse_config_data()
987 b_info->sched_params.weight = l; in parse_config_data()
989 b_info->sched_params.cap = l; in parse_config_data()
991 b_info->sched_params.period = l; in parse_config_data()
993 b_info->sched_params.slice = l; in parse_config_data()
995 b_info->sched_params.latency = l; in parse_config_data()
997 b_info->sched_params.extratime = l; in parse_config_data()
1000 b_info->target_memkb = l * 1024; in parse_config_data()
1003 b_info->max_memkb = l * 1024; in parse_config_data()
1007 if (libxl_cpu_bitmap_alloc(ctx, &b_info->avail_vcpus, l)) { in parse_config_data()
1011 libxl_bitmap_set_none(&b_info->avail_vcpus); in parse_config_data()
1013 libxl_bitmap_set((&b_info->avail_vcpus), l); in parse_config_data()
1017 b_info->max_vcpus = l; in parse_config_data()
1020 if (libxl_vuart_type_from_string(buf, &b_info->arch_arm.vuart)) { in parse_config_data()
1027 parse_vnuma_config(config, b_info); in parse_config_data()
1032 if (b_info->max_memkb == LIBXL_MEMKB_DEFAULT) in parse_config_data()
1033 b_info->max_memkb = b_info->target_memkb; in parse_config_data()
1034 if (b_info->max_vcpus == 0) in parse_config_data()
1035 b_info->max_vcpus = vcpus; in parse_config_data()
1037 if (b_info->max_vcpus < vcpus) { in parse_config_data()
1045 parse_vcpu_affinity(b_info, cpus, buf, num_cpus, /* is_hard */ true); in parse_config_data()
1050 parse_vcpu_affinity(b_info, cpus, buf, num_cpus, false); in parse_config_data()
1053 b_info->max_grant_frames = l; in parse_config_data()
1055 b_info->max_grant_frames = max_grant_frames; in parse_config_data()
1057 b_info->max_maptrack_frames = l; in parse_config_data()
1059 b_info->max_maptrack_frames = max_maptrack_frames; in parse_config_data()
1061 libxl_defbool_set(&b_info->claim_mode, claim_mode); in parse_config_data()
1102 b_info->shadow_memkb = !xlu_cfg_get_long(config, "shadow_memory", &l, 0) in parse_config_data()
1104 : libxl_get_required_shadow_memory(b_info->max_memkb, in parse_config_data()
1105 b_info->max_vcpus); in parse_config_data()
1107 xlu_cfg_get_defbool(config, "nomigrate", &b_info->disable_migrate, 0); in parse_config_data()
1122 b_info->tsc_mode = l; in parse_config_data()
1125 if (libxl_tsc_mode_from_string(buf, &b_info->tsc_mode)) { in parse_config_data()
1133 b_info->rtc_timeoffset = l; in parse_config_data()
1139 xlu_cfg_get_defbool(config, "localtime", &b_info->localtime, 0); in parse_config_data()
1142 b_info->video_memkb = l * 1024; in parse_config_data()
1145 b_info->event_channels = l; in parse_config_data()
1147 xlu_cfg_replace_string (config, "kernel", &b_info->kernel, 0); in parse_config_data()
1148 xlu_cfg_replace_string (config, "ramdisk", &b_info->ramdisk, 0); in parse_config_data()
1149 xlu_cfg_replace_string (config, "device_tree", &b_info->device_tree, 0); in parse_config_data()
1150 b_info->cmdline = parse_cmdline(config); in parse_config_data()
1153 xlu_cfg_get_defbool(config, "acpi", &b_info->acpi, 0); in parse_config_data()
1155 xlu_cfg_replace_string (config, "bootloader", &b_info->bootloader, 0); in parse_config_data()
1157 &b_info->bootloader_args, 1)) { in parse_config_data()
1168 &b_info->bootloader_args); in parse_config_data()
1179 if (b_info->type == LIBXL_DOMAIN_TYPE_PV) { in parse_config_data()
1198 b_info->timer_mode = l; in parse_config_data()
1200 if (b_info->type == LIBXL_DOMAIN_TYPE_PV) { in parse_config_data()
1206 if (libxl_timer_mode_from_string(buf, &b_info->timer_mode)) { in parse_config_data()
1213 xlu_cfg_get_defbool(config, "nestedhvm", &b_info->nested_hvm, 0); in parse_config_data()
1214 xlu_cfg_get_defbool(config, "apic", &b_info->apic, 0); in parse_config_data()
1216 switch(b_info->type) { in parse_config_data()
1218 kernel_basename = libxl_basename(b_info->kernel); in parse_config_data()
1224 b_info->kernel = NULL; in parse_config_data()
1229 &b_info->u.hvm.firmware, 0); in parse_config_data()
1231 &b_info->u.hvm.system_firmware, 0); in parse_config_data()
1233 if (libxl_bios_type_from_string(buf, &b_info->u.hvm.bios)) { in parse_config_data()
1238 } else if (b_info->u.hvm.system_firmware) in parse_config_data()
1242 xlu_cfg_get_defbool(config, "pae", &b_info->u.hvm.pae, 0); in parse_config_data()
1243 xlu_cfg_get_defbool(config, "acpi_s3", &b_info->u.hvm.acpi_s3, 0); in parse_config_data()
1244 xlu_cfg_get_defbool(config, "acpi_s4", &b_info->u.hvm.acpi_s4, 0); in parse_config_data()
1245 xlu_cfg_get_defbool(config, "acpi_laptop_slate", &b_info->u.hvm.acpi_laptop_slate, 0); in parse_config_data()
1246 xlu_cfg_get_defbool(config, "nx", &b_info->u.hvm.nx, 0); in parse_config_data()
1247 xlu_cfg_get_defbool(config, "hpet", &b_info->u.hvm.hpet, 0); in parse_config_data()
1248 xlu_cfg_get_defbool(config, "vpt_align", &b_info->u.hvm.vpt_align, 0); in parse_config_data()
1255 libxl_bitmap_alloc(ctx, &b_info->u.hvm.viridian_enable, in parse_config_data()
1257 libxl_bitmap_alloc(ctx, &b_info->u.hvm.viridian_disable, in parse_config_data()
1265 libxl_bitmap_set_any(&b_info->u.hvm.viridian_enable); in parse_config_data()
1267 libxl_defbool_set(&b_info->u.hvm.viridian, true); in parse_config_data()
1269 libxl_bitmap *s = &b_info->u.hvm.viridian_enable; in parse_config_data()
1270 libxl_bitmap *r = &b_info->u.hvm.viridian_disable; in parse_config_data()
1273 s = &b_info->u.hvm.viridian_disable; in parse_config_data()
1274 r = &b_info->u.hvm.viridian_enable; in parse_config_data()
1293 xlu_cfg_get_defbool(config, "viridian", &b_info->u.hvm.viridian, 1); in parse_config_data()
1303 b_info->u.hvm.mmio_hole_memkb = l * 1024; in parse_config_data()
1304 mmio_hole_size = b_info->u.hvm.mmio_hole_memkb * 1024; in parse_config_data()
1313 if (!xlu_cfg_get_defbool(config, "altp2mhvm", &b_info->u.hvm.altp2m, 0)) in parse_config_data()
1318 &b_info->u.hvm.smbios_firmware, 0); in parse_config_data()
1320 &b_info->u.hvm.acpi_firmware, 0); in parse_config_data()
1324 e = libxl_ms_vm_genid_generate(ctx, &b_info->u.hvm.ms_vm_genid); in parse_config_data()
1338 b_info->u.hvm.rdm_mem_boundary_memkb = l * 1024; in parse_config_data()
1347 b_info->u.hvm.mca_caps |= XEN_HVM_MCA_CAP_LMCE; in parse_config_data()
1377 libxl_bios_type_from_string(buf, &b_info->u.hvm.bios)) { in parse_config_data()
1379 b_info->u.hvm.bios = LIBXL_BIOS_TYPE_OVMF; in parse_config_data()
1383 &b_info->u.hvm.firmware, 0); in parse_config_data()
1400 if (b_info->kernel) { in parse_config_data()
1412 xasprintf(&b_info->kernel, XENFIRMWAREDIR "/%s.bin", buf); in parse_config_data()
1414 if (!b_info->bootloader && !b_info->kernel) { in parse_config_data()
1432 b_info->altp2m = l; in parse_config_data()
1434 if (libxl_altp2m_mode_from_string(buf, &b_info->altp2m)) { in parse_config_data()
1442 b_info->num_ioports = num_ioports; in parse_config_data()
1443 b_info->ioports = calloc(num_ioports, sizeof(*b_info->ioports)); in parse_config_data()
1444 if (b_info->ioports == NULL) { in parse_config_data()
1489 b_info->ioports[i].first = start; in parse_config_data()
1490 b_info->ioports[i].number = end - start + 1; in parse_config_data()
1495 b_info->num_irqs = num_irqs; in parse_config_data()
1496 b_info->irqs = calloc(num_irqs, sizeof(*b_info->irqs)); in parse_config_data()
1497 if (b_info->irqs == NULL) { in parse_config_data()
1520 b_info->irqs[i] = ul; in parse_config_data()
1526 b_info->num_iomem = num_iomem; in parse_config_data()
1527 b_info->iomem = calloc(num_iomem, sizeof(*b_info->iomem)); in parse_config_data()
1528 if (b_info->iomem == NULL) { in parse_config_data()
1541 libxl_iomem_range_init(&b_info->iomem[i]); in parse_config_data()
1543 &b_info->iomem[i].start, in parse_config_data()
1544 &b_info->iomem[i].number, &used, in parse_config_data()
1545 &b_info->iomem[i].gfn, &used); in parse_config_data()
1881 xlu_cfg_get_defbool(config, "e820_host", &b_info->u.pv.e820_host, 0); in parse_config_data()
1887 b_info->u.hvm.rdm.strategy = rdm.strategy; in parse_config_data()
1888 b_info->u.hvm.rdm.policy = rdm.policy; in parse_config_data()
1909 pcidev->rdm_policy = b_info->u.hvm.rdm.policy; in parse_config_data()
1919 libxl_defbool_set(&b_info->u.pv.e820_host, true); in parse_config_data()
1998 e = libxl_cpuid_parse_config_xend(&b_info->cpuid, buf); in parse_config_data()
2044 e = libxl_cpuid_parse_config(&b_info->cpuid, p); in parse_config_data()
2090 &b_info->device_model, 0); in parse_config_data()
2093 b_info->device_model_version in parse_config_data()
2096 b_info->device_model_version in parse_config_data()
2103 } else if (b_info->device_model) in parse_config_data()
2106 &b_info->device_model_stubdomain, 0); in parse_config_data()
2111 &b_info->device_model_ssid_label, 0); in parse_config_data()
2114 &b_info->device_model_user, 0); in parse_config_data()
2118 &b_info->extra##type, 0); \ in parse_config_data()
2158 parse_top_level_vnc_options(config, &b_info->u.hvm.vnc); in parse_config_data()
2159 parse_top_level_sdl_options(config, &b_info->u.hvm.sdl); in parse_config_data()
2162 xlu_cfg_get_defbool(config, "dm_restrict", &b_info->dm_restrict, 0); in parse_config_data()
2167 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_STD; in parse_config_data()
2169 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_CIRRUS; in parse_config_data()
2171 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_NONE; in parse_config_data()
2173 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_QXL; in parse_config_data()
2179 b_info->u.hvm.vga.kind = l ? LIBXL_VGA_INTERFACE_TYPE_STD : in parse_config_data()
2183 libxl_hdtype_from_string(buf, &b_info->u.hvm.hdtype)) { in parse_config_data()
2189 xlu_cfg_replace_string (config, "keymap", &b_info->u.hvm.keymap, 0); in parse_config_data()
2190 xlu_cfg_get_defbool (config, "spice", &b_info->u.hvm.spice.enable, 0); in parse_config_data()
2192 b_info->u.hvm.spice.port = l; in parse_config_data()
2194 b_info->u.hvm.spice.tls_port = l; in parse_config_data()
2196 &b_info->u.hvm.spice.host, 0); in parse_config_data()
2198 &b_info->u.hvm.spice.disable_ticketing, 0); in parse_config_data()
2200 &b_info->u.hvm.spice.passwd, 0); in parse_config_data()
2202 &b_info->u.hvm.spice.agent_mouse, 0); in parse_config_data()
2204 &b_info->u.hvm.spice.vdagent, 0); in parse_config_data()
2206 &b_info->u.hvm.spice.clipboard_sharing, 0); in parse_config_data()
2208 b_info->u.hvm.spice.usbredirection = l; in parse_config_data()
2210 &b_info->u.hvm.spice.image_compression, 0); in parse_config_data()
2212 &b_info->u.hvm.spice.streaming_video, 0); in parse_config_data()
2213 xlu_cfg_get_defbool(config, "nographic", &b_info->u.hvm.nographic, 0); in parse_config_data()
2215 libxl_defbool_set(&b_info->u.hvm.gfx_passthru, l); in parse_config_data()
2218 &b_info->u.hvm.gfx_passthru_kind)) { in parse_config_data()
2224 libxl_defbool_set(&b_info->u.hvm.gfx_passthru, true); in parse_config_data()
2227 &b_info->u.hvm.serial_list, in parse_config_data()
2237 &b_info->u.hvm.serial, 0)) in parse_config_data()
2244 xlu_cfg_replace_string (config, "boot", &b_info->u.hvm.boot, 0); in parse_config_data()
2245 xlu_cfg_get_defbool(config, "usb", &b_info->u.hvm.usb, 0); in parse_config_data()
2247 b_info->u.hvm.usbversion = l; in parse_config_data()
2249 &b_info->u.hvm.usbdevice_list, in parse_config_data()
2259 &b_info->u.hvm.usbdevice, 0)) in parse_config_data()
2266 xlu_cfg_replace_string (config, "soundhw", &b_info->u.hvm.soundhw, 0); in parse_config_data()
2268 &b_info->u.hvm.xen_platform_pci, 0); in parse_config_data()
2270 if(b_info->u.hvm.vnc.listen in parse_config_data()
2271 && b_info->u.hvm.vnc.display in parse_config_data()
2272 && strchr(b_info->u.hvm.vnc.listen, ':') != NULL) { in parse_config_data()
2291 b_info->u.hvm.vendor_device = d; in parse_config_data()
2296 e = libxl_gic_version_from_string(buf, &b_info->arch_arm.gic_version); in parse_config_data()