Keir Fraser [Fri, 25 Jan 2008 16:02:20 +0000 (16:02 +0000)]
x86: First 1MB of memory should be mapped with 4kB mappings to avoid
conflict with fixed-range MTRRs. While there, we now map the VGA hole
as uncacheable. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
When setting e.g. 'on_crash=rename-restart' option in domain config
and crashing guest OS running in the domain, the new domain is
restarted with same name as renamed domain.
jfehlig4: # xm li
Name ID Mem VCPUs State Time(s)
Domain-0 0 1233 4 r----- 937.9
Domain-e64b12a0-0493-44d7-afde-55c776513426 21 384 1 ---c- 14.3
Domain-e64b12a0-0493-44d7-afde-55c776513426 22 384 1 r----- 7.3
This patch copies the domain info prior to setting new name and uuid
in the crashed domain info and uses the copied domain info to
construct the restarted domain.
Keir Fraser [Fri, 25 Jan 2008 13:26:38 +0000 (13:26 +0000)]
x86: Fix host S3.
Time zone info just needs to be calculated in S3 suspend procedure.
However, time_suspend() is also called on AP. That wasteful
get_cmos_time() on AP may break __cpu_die() assumption since
get_cmos_time() can take up to one second. This fix just limits it to
running on the BSP.
Keir Fraser [Fri, 25 Jan 2008 13:22:52 +0000 (13:22 +0000)]
Fix losetup -r flag when we specify 'w!' for the disk mode.
From: Zhigang Wang <zhigang.x.wang@oracle.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Thu, 24 Jan 2008 14:40:35 +0000 (14:40 +0000)]
x86, hvm: MTRR can't cover all the memery ranges
MTRR can't cover all the memery ranges, due to guest E820 is changed
by CS:16728 with current method. Signed-off-by: Disheng Su <disheng.su@intel.com>
Keir Fraser [Thu, 24 Jan 2008 14:39:38 +0000 (14:39 +0000)]
vt-d: Do FLR of assigned devices with VT-d
Currently there is a pdev_flr() function to do FLR before device
assignment in qemu, but most of devices don't have FLR capability.
What's more, should do FLR before assignment and deassignment for
keeping correct device status. If the device doesn't have FLR
capablility, this patch implemented to enter D3hot and return to D0 to
do FLR. And exposed pdev_flr() in VT-d utils, then it can be invoked
by assignment and deassignment functions.
Signed-off-by: Weidong Han <weidong.han@intel.com> Signed-off-by: Anthony Xu <anthony.xu@intel.com>
Keir Fraser [Thu, 24 Jan 2008 14:29:13 +0000 (14:29 +0000)]
vmx realmode: Restructure code for clarity and better treatment of
VM_ENTRY_INTR_INFO. Also add more sanity checking. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 23 Jan 2008 18:12:37 +0000 (18:12 +0000)]
ioemu: handle empty vnc passwd
Have xenstore_read_vncpasswd return -1 when it is unable to read the
passwd from XenStore (and store an empty password). However, don't
exit in such case since it may just mean that the use didn't set a
passwd. If he really did, xend would have given the passwd flag in the
-vnc option, and the empty passwd would make the vnc authentication
reject any password anyway.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com> Acked-by: Daniel P. Berrange <berrange@redhat.com>
Keir Fraser [Wed, 23 Jan 2008 14:30:29 +0000 (14:30 +0000)]
x86_emulate: Emulate FNINIT, FNSTCW, FNSTSW x87 instructions.
Provide new hook ->load_fpu_ctxt() to ensure emulated environment's
FPU state is loaded onto the local processor. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 23 Jan 2008 13:22:13 +0000 (13:22 +0000)]
New XS_SET_TARGET
Stubdomains (and probably other domain disagregation elements too)
need to be able to tinker with another domain. This adds
XS_SET_TARGET so that XenStore allows domains to have permissions on
files on which the "target" has permissions. This also adds
xs_set_target, called by the domain builder when the 'target' option
is used in the configuration.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 23 Jan 2008 13:21:44 +0000 (13:21 +0000)]
New XEN_DOMCTL_set_target
Stubdomains (and probably other domain disagregation elements too)
need to be able to tinker with another domain. This adds IS_PRIV_FOR
that extends IS_PRIV by allowing domains to have privileges over a
given "target" domain. XEN_DOMCTL_set_target permits to set this
"target". A new 'target' configuration option makes the domain builder
use it.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 23 Jan 2008 11:21:35 +0000 (11:21 +0000)]
tools/check: Add explicit include path for funcs.sh.
When the current directory is not in $PATH,
then the patch fixes the following errors:
Checking check_brctl: .: funcs.sh: not found
Checking check_crypto_lib: .: funcs.sh: not found
Checking check_curl: .: funcs.sh: not found
Checking check_iproute: .: funcs.sh: not found
Checking check_python: .: funcs.sh: not found
Checking check_python_xml: .: funcs.sh: not found
Checking check_udev: .: funcs.sh: not found
Checking check_xml2: .: funcs.sh: not found
Checking check_zlib_lib: .: funcs.sh: not found
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Keir Fraser [Tue, 22 Jan 2008 17:20:39 +0000 (17:20 +0000)]
vmx: Disable vmxassist in the default build.
We now use x86 real-mode emulation by default.
Select old behaviour (for now) by specifying vmxassist=y at build time. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Tue, 22 Jan 2008 17:18:51 +0000 (17:18 +0000)]
vmx realmode: Faster emulation of REP INS and REP OUTS.
This makes, in particular, reading files via the BIOS disk abstraction
much much much faster. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Tue, 22 Jan 2008 09:51:49 +0000 (09:51 +0000)]
xend: On block-attach, remove device information when VmError occurs.
I tested xm block-attach command with a wrong
parameter(file:). Naturally a command error occurred. Then I retested
xm block-attach command with a correct parameter(phy:). But a command
error occurred again. The second command error occurred because Xend
did not remove device information from self.info when the first
command error occurred.
Keir Fraser [Tue, 22 Jan 2008 09:50:06 +0000 (09:50 +0000)]
hvm, ioemu: Fix the ide/cdrom emulation error on FC7 guest.
The new libata-eh in the Linux kernel is throwing a fit over the QEMU
cdrom device for two reasons:
1) DRQ can be set with ERR_STAT set. This is a violation of the ATAPI
state machine.
2) After a TEST_UNIT_READY ATAPI command is sent ERR_STAT is getting
set
which is correct. But, when the OS issues another ATAPI command
ERR_STAT is still set. Which is bad since the next expected command
from the OS is REQUEST_SENSE to find out why ERR_STAT is set.
bug this fixes: https://bugzilla.novell.com/show_bug.cgi?id=3D291775
Signed-off-by: Brandon Philips <bphilips@suse.de>
Porting this qemu fix to xen.
Keir Fraser [Tue, 22 Jan 2008 09:43:53 +0000 (09:43 +0000)]
Make tools/Makefile cross-friendly
Pass Xen cross-compilation options through to ioemu.
Export CROSS_SYS_ROOT for use by scripts. Unexport
IOEMU_DIR since it isn't used outside of the Makefile.
Keir Fraser [Mon, 21 Jan 2008 14:39:33 +0000 (14:39 +0000)]
hvm: Allow PCI high-memory resource to be decided by hvmloader at
HVM-guest boot time. Also make a few PCI0 resource ResourceProducer
type -- this seems to be specified by some randomly-sampled real ACPI
systems. Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 18 Jan 2008 15:28:59 +0000 (15:28 +0000)]
pv-on-hvm: fix/adjust pv driver's mkbuildtree
Allow invoking the script from other than the current directory (the
script now infers the tree is where the script lives). Print which
trees are actually being used.
Fix the linking of sources from Linux tree's drivers/xen/ - this was
needlessly invoking lndir on various sub-directories, in some cases
even twice.
Adjust the script to be able to deal with Linux 2.6.24's unified x86
include directory.
Keir Fraser [Fri, 18 Jan 2008 15:22:42 +0000 (15:22 +0000)]
minios: extend map_frames into being able to map a series of
contiguous frames, or the same frame several times, aligned, from
another domain, with specific protection, and with potential
failures.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Fri, 18 Jan 2008 13:43:26 +0000 (13:43 +0000)]
Clarify 'xm mem-set' and 'xm vcpu-set' requirements in documentation.
From: Richard W.M. Jones <rjones@redhat.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>