Commit Graph
7773 Commits
Author SHA1 Message Date
Keir Fraser 039950d904 libxc: Pre-zero argument structures for map/unmap_pirq operations.
From: Yunhong Jiang <yunhong.jiang@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-25 11:52:23 +00:00
Keir Fraser 80b4a3ebc3 libxc: Fix cpuid() inline asm.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-24 18:48:54 +00:00
Keir Fraser d8f8f35470 xm: Show usage message of xm commands
The following commands don't show an usage message even if we give
a wrong option to the commands.

 - xm block-list
 - xm network-list
 - xm network2-list
 - xm vtpm-list
 - xm pci-list
 - xm scsi-list

e.g.
 # xm block-list --xxx vm1
 Error: option --xxx not recognized

This patch shows the usage message of the commands.

e.g.
 # xm block-list --xxx vm1
 Error: option --xxx not recognized
 Usage: xm block-list <Domain> [--long]
 List virtual block devices for a domain.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2010-02-24 10:46:49 +00:00
Keir Fraser 078a073a6c xend: notify xenpv device model that console info is ready
Sometimes PV domain with vfb doesn't boot up. /sbin/kudzu is stuck.
After investigation, I've found that the evtchn for console is not
bound at all.

Normal sequence of evtchn initialization in qemu-dm for xenpv is:
1) watch xenstore backpath (/local/domain/0/backend/console/<domid>/0)
2) read console info (/local/domain/<domid>/console/{type, ring-ref,
port..=
})
3) bind the evtchn to the port.

But in some case, xend writes to the backpath before the console info
is prepared, and never write to the backpath again. So the qemu-dm
fails at 2) and never reach to 3).

When this happens, manually xenstore-write command on Domain-0
resumes the guest.

Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
2010-02-24 09:38:35 +00:00
Keir Fraser 79e0b9479d python: Don't install anything directly under /usr/share
Signed-off-by: Guillaume Rousse <Guillaume.Rousse@inria.fr>
2010-02-22 18:47:22 +00:00
Keir Fraser 022cf55cf1 hvmloader: Replace unportable usage of GNU head with portable awk.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-22 18:42:50 +00:00
Keir Fraser a64e08899b Fix blktap2 test in xen-hotplug-cleanup
The blktap2 test in xen-hotplug-cleanup was not quite right, causing
orphaned /vm/<uuid>/device node in xenstore.  Attempt to reattach the
device failed:

xen53: # xm block-attach 0 file:/tmp/d0 /dev/xvdp r
xen53: # xm block-detach 0 /dev/xvdp
xen53: # xenstore-ls /vm/00000000-0000-0000-0000-000000000000/device
vbd =3D ""
 51952 =3D ""
  frontend =3D "/local/domain/0/device/vbd/51952"
  frontend-id =3D "0"
  backend-id =3D "0"
  backend =3D "/local/domain/0/backend/vbd/0/51952"
xen53: # xm block-attach 0 file:/tmp/d0 /dev/xvdp r
Error: Device /dev/xvdp (51952, vbd) is already connected.
Usage: xm block-attach <Domain> <BackDev> <FrontDev> <Mode>
[BackDomain]

From: Jim Fehlig <jfehlig@novell.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-22 10:07:27 +00:00
Keir Fraser d900060b28 Fix for fs-backend crash when xend was not started after system boot.
Signed-off-by: Daniel Kiper <dkiper@net-space.pl>
2010-02-22 10:06:21 +00:00
Keir Fraser b0e6d9b53a hvmloader: fix vgatype detecting issue
When graphics card is assigned to a guest as a secondary VGA,
without gfx_passthru and emulated VGA is the primary VGA,
hvmloader misreads gfx_passthru is specified if VGA device is
found after the emulated VGA.

This patch fix this issue. If emulated VGA is found, hvmloader
preserves it and loads vgabios of the emulated VGA.

Signed-off-by: Noboru Iwamatsu <n_iwamatsu@jp.fujitsu.com>
2010-02-22 10:04:22 +00:00
Keir Fraser fa2959b21f xm: Fix xm network-list for XenAPI
When I use XenAPI, MAC addresses are not shown by xm network-list.
MAC addresses are shown by this patch.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2010-02-22 10:00:24 +00:00
Keir Fraser 79f5cb24ab hotplug: ignore xenstore-read error
The failure to read "backend/tap/<domid>/*" in the xenstore is a usual
case since the domain is gone after xenstore-ls command is executed.
The error should be ignored.

Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
2010-02-16 09:28:39 +00:00
Keir Fraser e8918e36f9 xend: Remove redundant 'name' from LEGACY_CFG_TYPES and LEGACY_XENSTORE_VM_PARAMS
Two 'name's are defined in LEGACY_CFG_TYPES of XendConfig.py.
LEGACY_XENSTORE_VM_PARAMS also is same.
This patch removes redundant 'name's.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2010-02-15 08:19:07 +00:00
Keir Fraser ffd2932a60 xenpaging: Small code style cleanups
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-15 08:18:14 +00:00
Keir Fraser 7527c26d47 Fix a small bug about HVM_MAX_VCPUS related array
Currently it doesn't block running, anyway, it better fix the small
bug considering if in the future HVM_MAX_VCPUS will not necessarily be
8x value.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>=
2010-02-15 08:15:08 +00:00
Keir Fraser 819de76727 hvmloader: Fix an ACPI asl bug.
Fix an ACPI asl bug by explicitly convert PRS to buffer, otherwise PRS
would be parsed as integer if less than 32/64 bits (according to ACPI
1.0 or 2.0).

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
2010-02-15 08:14:21 +00:00
Keir Fraser 5f5e014566 Vcpu hotplug: Move ACPI processor from \_PR to \_SB
Move processor from \_PR to \_SB. ACPI processor can be defined
under \_PR or \_SB. However, recently os like linux 2.6.30/32 support
cpu hotplug better for \_SB processor object.

Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-15 08:13:26 +00:00
Keir Fraser 70d0560287 Remus: increase failover timeout from 500ms to 1s
500ms is aggressive enough to trigger split-brain under fairly
ordinary workloads, particularly for HVM. The long-term fix is to
integrate with a real HA monitor like linux HA.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2010-02-12 09:23:10 +00:00
Keir Fraser 98650e12c1 hvmloader: Fix parallel build of ACPI tables.
Make build.c dependency on ssdt_{pm,tpm}.h explicit, else they can be
built in the wrong order.

Also, improve naming of target DSDT structures, and specify -p option
to iasl so that all generated files for a given target have
target-unique names, hence build can proceed safely in parallel.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-12 09:16:10 +00:00
Keir Fraser 1ffced4c92 hvmloader: Fix comment style in ssdt_tpm.asl
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-12 09:14:16 +00:00
Keir Fraser 11c76718f8 hvmloader: Build a compatibility DSDT with only 15 processor objects.
Deploy this smaller DSDT where possible: this is required to boot
Windows 2000, which only supports up to 15 processors and will blue
screen if it sees more processor objects than that (even inactive
ones).

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-11 22:42:18 +00:00
Keir Fraser 5f6338c27e hvmloader: Remove checked-in ready-compiled SSDT_PM and SSDT_TPM.
These can be built at the same time as the DSDT.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-11 21:49:47 +00:00
Keir Fraser e5a69893b2 hvmloader: Do not leave compiled DSDT checked in to tree.
It's big and small changes generate huge diffs. People building the
firmware will have to ensure they have iasl installed.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-11 21:21:41 +00:00
Keir Fraser 01c8d49675 blktap2: disable presently broken memshr extension
Signed-off-by: Daniel Stodden <daniel.stodden@citrix.com>
2010-02-11 19:50:42 +00:00
Keir Fraser 1d1987220a tools/xenpaging: fix bug of Segmentation fault
Segmentation fault occurs in two situations:
1. argc is less than 3
2. xenpaging_init() fault

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
2010-02-11 19:50:05 +00:00
Keir Fraser 0fd6ab35d1 tools/xenbaked: fix bug of Segmentation fault
Run xenbaked will cause Segmentation fault, because
the method to get pointers of trace buffer metadata
is wrong. Fix this bug according to xentrace.

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
2010-02-10 13:30:57 +00:00
Keir Fraser 931df711f2 libxc: fix bug in xc_tbuf_get_size()
The size in pages of trace buffer should be t_info->tbuf_size
rather than t_info pages.

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
2010-02-10 13:30:16 +00:00
Keir Fraser 01d99a3212 tools/remus: fix build in (symlinked) read-only source tree
Modifying source files should generally be avoided; if it is being
done, care should at least be taken to not attempt writes to read-only
files.

While at it, also force the whole ugly construct to fail if any of its
commands fails.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2010-02-10 09:19:16 +00:00
Keir Fraser 541a47d53d xend: Enlarge the memory balloon size for domain creation since shadow
pre-allocation size has changed from 1M to 4M.

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2010-02-10 09:07:48 +00:00
Keir Fraser 2f98a8cad0 tools/xenconsole: fix Segmentation fault
Segmentation fault occurs if DOMID isn't specified.
Some check be added to output error message in this situation.

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
2010-02-08 08:50:03 +00:00
Keir Fraser d2a92c94a1 xenpm: Allow user to enable/disable dbs governor turbo mode.
Signed-off-by: Lu Guanqun <guanqun.lu@intel.com>
2010-02-08 08:48:40 +00:00
Keir Fraser a73520207b remus: Only build kernel module if parent kernel has IMQ configured.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-08 08:41:51 +00:00
Keir Fraser 7283e6eae8 blktap2: Fix non-Linux build
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-05 13:57:20 +00:00
Keir Fraser e7a5d6fa85 Remus: fix ia64 build
This patch fixes the following error:
  /xen-unstable.hg/tools/remus/kmod/sch_queue.c: In function
  `is_foreign':
  /xen-unstable.hg/tools/remus/kmod/sch_queue.c:51: error:
  `phys_to_machine_mapping' undeclared (first use in this function)

Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
2010-02-05 10:37:24 +00:00
Keir Fraser e9703a99de libxl: Properly parse vbd names
Implement proper parsing of vbd names, as documented here:
  From: Ian Jackson <Ian.Jackson@eu.citrix.com>
  Subject: Xen vbd numbering
  Date: Wed, 03 Feb 2010 16:51:47 GMT
  Message-ID: <19305.43376.600816.817077@mariner.uk.xensource.com>
  http://lists.xensource.com/archives/html/xen-devel/2010-02/msg00183.html

Previously, xvd and numerical specification were broken in libxl.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-05 10:36:17 +00:00
Keir Fraser 10d13f8ac6 libxl: notice if vbd virt device specifier ("path") unrecognised
Previously, specifying a virtual device string the vbd that couldn't
be parsed would result in attempting to actually create the device
with vbd number -1 !

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-05 10:35:57 +00:00
Keir Fraser af43e76ed6 Revert changeset 20898:8c1889297084 2010-02-04 19:40:19 +00:00
Keir Fraser e670c28c9f libxc: Reorder functions in xc_misc.c to avoid weak symbol problem
Using a function, and then declaring it weak later, has undefined
behaviour:
  cc1: warnings being treated as errors
  xc_misc.c:388: error: weak declaration of 'xc_map_foreign_bulk'
  after first use results in unspecified behavior

So swap the functions xc_map_foreign_pages and xc_map_foreign_bulk.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-04 13:16:39 +00:00
Keir Fraser 7a381d2707 libxenlight: Do not build libconfig, but require it as a prerequisite
Signed-off-by: Zhigang Wang <zhigang.x.wang@oracle.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-04 13:16:03 +00:00
Keir Fraser 8973872b34 VT-d, tools: Intel IGD passthrough 2/2: hvm config file example
Add an option into hvm config file to enable graphics passthrough
including discrete and IGD. To passthrough graphics to guest, need to
set gfx_passthru=1, and also specify graphics device BDF in pci
passthrough option, like pci=['xx:xx.x'] in hvm config file.

Signed-off-by: Weidong Han <weidong.han@intel.com>
2010-02-04 09:09:13 +00:00
Keir Fraser 3c29b3fd3c VT-d, tools: Intel IGD passthrough 1/2: vendor-specific FLR
Due to FLR capability of IGD is not exposed on some platforms, this
patch uses vendor specific FLR to reset those IGDs.

Signed-off-by: Weidong Han <weidong.han@intel.com>
2010-02-04 09:08:05 +00:00
Keir Fraser f3bbcc7995 tools: Do not append trailing slash to XEN_ROOT in Makefiles
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2010-02-04 09:03:42 +00:00
Keir Fraser afe765651d libxc: Check there's enough memory for segments we're creating
Previously, xc_dom_alloc_segment would go ahead even if the segment
we're trying to create is too big for the domain's RAM (or the
requested addr is out of range).  It would pass invalid parameters to
xc_dom_seg_to_ptr giving undefined behaviour.

Fixing xc_dom_seg_to_ptr to fail is not sufficient because we want to
provide a comprehensible explanation to the caller - which may
ultimately be the user.

In particular, with this change attempting "xl create" with a ramdisk
image bigger than the guest's specified RAM will provide a useful
error message mentioning the ramdisk.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-03 09:46:01 +00:00
Keir Fraser 91e172bf6b libxc: Check full range of pfns for xc_dom_pfn_to_ptr
Previously, passing a valid pfn but an overly large count to
xc_dom_pfn_to_ptr, and functions which call it, would run off the end
of the pfn array giving undefined behaviour.

It is tempting to change this check to an assert, as no callers should
be providing invalid parameters here.  But this is probably best not
done while frozen for 4.0.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-03 09:45:40 +00:00
Keir Fraser ada9d8c9f2 xl: Do not duplicate last line of config file when trying compat mode.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2010-02-03 09:45:25 +00:00
Keir Fraser afea05486c xend: Disallow "/" in domain names
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2010-02-03 09:45:02 +00:00
Keir Fraser 1921835bf4 tools/xen-detect: fix printing xen version
check_for_xen() should return xen version rather than
boolean true if signature XenVMM is found.

Signed-off-by: Yu Zhiguo <yuzg@cn.fujitsu.com>
2010-02-03 09:42:45 +00:00
Keir Fraser 049ad7d34e libxc: Export do_mca hypercall to user space tools.
This is mainly for software trigger MCE operation, so that test suites
can trigger software MCE.

Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
2010-02-03 09:38:57 +00:00
Keir Fraser a90054b38b Remus: ensure kernel modules are built before attempting to install
them

make tools seems to skip straight to the install target.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2010-02-03 09:38:00 +00:00
Keir Fraser 283444b7cd Remus: use imqebt instead of ebtables
I added a standalone IMQ-aware ebtables version in the initial Remus
submission, but forgot to actually activate it. This fixes that
oversight.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2010-02-03 09:37:40 +00:00
Keir Fraser e0b0cd61d2 xentrace: Disable tracing, then read records one more time.
When interrupted, first disable tracing, then read through the records
one last time.

Without this patch, it's possible to get traces which interact (such
as runstate changes) on processors with higher numbers, while missing
the corresponding traces generated on lower-numbered processors.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
2010-02-03 09:36:37 +00:00