mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
Merge
This commit is contained in:
commit
fa1c92c8ce
6 files changed
+28
-3
No files matched your search
@@ -35,6 +35,7 @@ SUBDIRS-y += xenpmd
|
||||
SUBDIRS-y += libxl
|
||||
SUBDIRS-y += remus
|
||||
SUBDIRS-$(CONFIG_X86) += xenpaging
|
||||
SUBDIRS-y += debugger/gdbsx
|
||||
|
||||
# These don't cross-compile
|
||||
ifeq ($(XEN_COMPILE_ARCH),$(XEN_TARGET_ARCH))
|
||||
@@ -114,3 +115,9 @@ subdir-clean-ioemu-dir:
|
||||
$(buildmakevars2shellvars); \
|
||||
$(MAKE) -C ioemu-dir clean; \
|
||||
fi
|
||||
|
||||
subdir-clean-debugger/gdbsx:
|
||||
$(MAKE) -C debugger/gdbsx clean
|
||||
|
||||
subdir-install-debugger/gdbsx:
|
||||
$(MAKE) -C debugger/gdbsx install
|
||||
@@ -879,6 +879,10 @@ static char ** libxl_build_device_model_args(struct libxl_ctx *ctx,
|
||||
flexarray_set(dm_args, num++, info->usbdevice);
|
||||
}
|
||||
}
|
||||
if (info->soundhw) {
|
||||
flexarray_set(dm_args, num++, "-soundhw");
|
||||
flexarray_set(dm_args, num++, info->soundhw);
|
||||
}
|
||||
if (info->apic) {
|
||||
flexarray_set(dm_args, num++, "-acpi");
|
||||
}
|
||||
|
||||
@@ -97,6 +97,7 @@ typedef struct {
|
||||
uint32_t target_memkb;
|
||||
uint32_t video_memkb;
|
||||
uint32_t shadow_memkb;
|
||||
bool disable_migrate;
|
||||
const char *kernel;
|
||||
int hvm;
|
||||
union {
|
||||
@@ -161,6 +162,7 @@ typedef struct {
|
||||
char *boot; /* boot order, for example dca */
|
||||
bool usb; /* usb support enabled or disabled */
|
||||
char *usbdevice; /* enable usb mouse: tablet for absolute mouse, mouse for PS/2 protocol relative mouse */
|
||||
char *soundhw; /* enable sound hardware */
|
||||
bool apic; /* apic enabled or disabled */
|
||||
int vcpus; /* max number of vcpus */
|
||||
int vcpu_avail; /* vcpus actually available */
|
||||
|
||||
@@ -68,6 +68,8 @@ int build_pre(struct libxl_ctx *ctx, uint32_t domid,
|
||||
(info->hvm) ? info->max_memkb :
|
||||
(info->max_memkb + info->u.pv.slack_memkb));
|
||||
xc_domain_set_tsc_info(ctx->xch, domid, info->tsc_mode, 0, 0, 0);
|
||||
if ( info->disable_migrate )
|
||||
xc_domain_disable_migrate(ctx->xch, domid);
|
||||
|
||||
if (info->hvm) {
|
||||
unsigned long shadow;
|
||||
|
||||
@@ -192,6 +192,7 @@ static void init_build_info(libxl_domain_build_info *b_info, libxl_domain_create
|
||||
b_info->max_vcpus = 1;
|
||||
b_info->max_memkb = 32 * 1024;
|
||||
b_info->target_memkb = b_info->max_memkb;
|
||||
b_info->disable_migrate = 0;
|
||||
if (c_info->hvm) {
|
||||
b_info->shadow_memkb = 0; /* Set later */
|
||||
b_info->video_memkb = 8 * 1024;
|
||||
@@ -360,6 +361,7 @@ static void printf_info(int domid,
|
||||
printf("\t(tsc_mode %d)\n", b_info->tsc_mode);
|
||||
printf("\t(max_memkb %d)\n", b_info->max_memkb);
|
||||
printf("\t(target_memkb %d)\n", b_info->target_memkb);
|
||||
printf("\t(nomigrate %d)\n", b_info->disable_migrate);
|
||||
|
||||
printf("\t(image\n");
|
||||
if (c_info->hvm) {
|
||||
@@ -551,6 +553,9 @@ static void parse_config_data(const char *configfile_filename_report,
|
||||
: libxl_get_required_shadow_memory(b_info->max_memkb,
|
||||
b_info->max_vcpus);
|
||||
|
||||
if (!xlu_cfg_get_long (config, "nomigrate", &l))
|
||||
b_info->disable_migrate = l;
|
||||
|
||||
if (!xlu_cfg_get_long(config, "tsc_mode", &l))
|
||||
b_info->tsc_mode = l;
|
||||
|
||||
@@ -833,9 +838,12 @@ skip_vfb:
|
||||
p = strtok(buf2, ",");
|
||||
if (!p)
|
||||
goto skip_pci;
|
||||
if (!sscanf(p, PCI_BDF_VDEVFN, &domain, &bus, &dev, &func, &vdevfn)) {
|
||||
sscanf(p, "%02x:%02x.%01x@%02x", &bus, &dev, &func, &vdevfn);
|
||||
if (sscanf(p, PCI_BDF_VDEVFN, &domain, &bus, &dev, &func, &vdevfn) < 4) {
|
||||
domain = 0;
|
||||
if (sscanf(p, "%02x:%02x.%01x@%02x", &bus, &dev, &func, &vdevfn) < 3) {
|
||||
fprintf(stderr,"xl: Unable to parse pci bdf (%s)\n", p);
|
||||
goto skip_pci;
|
||||
}
|
||||
}
|
||||
libxl_device_pci_init(*pcidevs + *num_pcidevs, domain, bus, dev, func, vdevfn);
|
||||
(*pcidevs)[*num_pcidevs].msitranslate = pci_msitranslate;
|
||||
@@ -892,6 +900,8 @@ skip_pci:
|
||||
dm_info->usb = l;
|
||||
if (!xlu_cfg_get_string (config, "usbdevice", &buf))
|
||||
dm_info->usbdevice = strdup(buf);
|
||||
if (!xlu_cfg_get_string (config, "soundhw", &buf))
|
||||
dm_info->soundhw = strdup(buf);
|
||||
if (!xlu_cfg_get_long (config, "xen_platform_pci", &l))
|
||||
dm_info->xen_platform_pci = l;
|
||||
}
|
||||
|
||||
@@ -45,7 +45,7 @@ do { \
|
||||
/* sleep for this long (milliseconds) between checking the trace buffers */
|
||||
#define POLL_SLEEP_MILLIS 100
|
||||
|
||||
#define DEFAULT_TBUF_SIZE 20
|
||||
#define DEFAULT_TBUF_SIZE 32
|
||||
/***** The code **************************************************************/
|
||||
|
||||
typedef struct settings_st {
|
||||
|
||||