Tim Deegan [Wed, 7 Feb 2007 17:29:52 +0000 (17:29 +0000)]
[HVM] Save/restore: don't try to save the MMIO memory-hole at 4GB.
Also remove two integer arrays that were set to a[i] == i. Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
pvfb: Split mouse and keyboard into separate devices.
This patch creates two separate input devices for keyboard and mouse
events. The reason for this is to separate them in the linux input
layer and allow them being routed different ways.
Use case: Configure the X-Server like this to get the mouse
events directly from the linux input layer, which has the major
advantage that absolute coordinates work correctly:
This makes the keyboard stop working though in case mouse and
keyboard events are coming through the same input device, at least
with older Xorg (6.9) versions.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
Assign fake pci product identifiers down from 0xffff. This may help
clarify that the devices are not actually PCI. Also it reduces
probability of accidental conflict if further real PCI assignments
occur in future (0x0002, 0x0003, ... would be obvious next identifiers
to allocate).
Tim Deegan [Wed, 7 Feb 2007 12:25:18 +0000 (12:25 +0000)]
Revert 13805: losetup -r is not portable
which breaks CD support on Debian Sarge, FC4, probably others. Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
- use symbolics instead of raw numbers (going to help the 2.6.20 port,
as those numbers change there)
- fold instructions where possible
- move fixup table into .rodata
[TPM] Set tcpa calls in the rombios and other fixes.
This patch places some tcpa calls into the rombios that had previously
not applied anymore or were not set.
Force the reads from MMIO memory locations that the compiler otherwise
optimizes away (-O2) if there was an immediate write to the same
memory location before.
Use #define'd constants wherever possible.
Fix all remaining compiler warnings.
Tim Deegan [Mon, 5 Feb 2007 11:38:22 +0000 (11:38 +0000)]
[HVM] Save/restore: misc tidying
- Don't save PIT's last-load-time or CPU's vmx-assist bits
- Reorder save as cpu, PICs, irqs, timers
- Save the correct value in the HPET's counter.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Linux 2.6.19 (x86-64) makes use of this feature if available, but Xen
(validly) fails the attempt to write the respective MSR. Hence the
feature must be hidden from PV guests.
Ewan Mellor [Thu, 1 Feb 2007 12:48:53 +0000 (12:48 +0000)]
Break out the Python path interrogation into a separate script. This has the
advantage that the temporary path manipulation cannot affect the main script,
and that it can be shared with other programs, such as xm-test.
Ian Campbell [Thu, 1 Feb 2007 10:20:34 +0000 (10:20 +0000)]
[LINUX] netfront: Don't call netif_carrier_off until the device is
fuly allocated.
netif_carrier_off() causes events to be queued on the device so if we
subsequently abort the allocation (e.g. due to lack of grant entries)
then we crash trying to access the now invalid device.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ian Campbell [Wed, 31 Jan 2007 16:54:21 +0000 (16:54 +0000)]
[XEN] Fix dom/sysctl structure alignement.
Versions of gcc up to and including 3.3 appear to ignore
__attribute__((align(x))) when applied to typedefs or to members of
anonymous unions. Workaround this by explicitly aligning each
definition of a 64 bit guest handle.
Tidy up x86_64 compat entry.S a bit.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Alastair Tse [Wed, 31 Jan 2007 13:20:36 +0000 (13:20 +0000)]
[XEND] Merge VFB support for PV and HVM guests.
This patch merges the way VFB are represented inside Xend by making
HVM VNC consoles use the VFB as its configuration object.
It preserves the way options are specified through xm but will create
a new VFB device that is used by image.py to put vnc config into
qemu-dm's command line. The parsing is moved into image.py's
parseDeviceModel() rather than in configVNC().
Through the Xen API, you can create a 'console' of protocol 'rfb' and
end up with a VNC console, on both HVM and PV guests. The location of
the connecting port is stored in the location attribute of the console
object. This is updated on each XendDomainInfo.update() if it
changes.
Also fixes missing read of the vnclisten and HVM_boot from the
config when initialised via xm. Makes sure bootable attribute for VBD
is store as an int when making SXP config.
Tim Deegan [Wed, 31 Jan 2007 12:23:35 +0000 (12:23 +0000)]
[HVM] Save/restore: save shared-info pfn and re-map it on restore
In the short term this allows us to save the same domain more than once.
Longer-term some more careful shared-info management will be needed.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Tim Deegan [Wed, 31 Jan 2007 10:27:10 +0000 (10:27 +0000)]
[HVM] Save/restore: clean up marshalling code
- All entries are now defined as structs and saved/restored
in self-contained operations.
- Save/restore operations are type-safe, to tie each entry's
typecode to a particular struct and its length.
- Save/restore handlers are registered once per host instead of
per domain.
- Detect buffer overrun before it happens and abort.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Ian Campbell [Wed, 31 Jan 2007 10:25:12 +0000 (10:25 +0000)]
[TOOLS] Fix foreign header build breakage.
Having both the Xen tree and the tools tree recurse into the foreign
headers directory causes headaches in parallel builds and when
building 32-bit tools + 64 bit Xen in the same tree.
Therefore we cause mk-symlinks to symlink in the foreign headers build
bits and generate a local version of the headers and checker tool.
Only libxc needs to do this since the other tools were actually
picking up the libxc version of the headers anyway so the mk-symlinks
calls can be removed from these components.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Ewan Mellor [Tue, 30 Jan 2007 18:30:18 +0000 (18:30 +0000)]
Added VM_metrics class, taking some of the fields from VM. Make VM.static_max
and static_min read-write. Added VM.VCPUs/{max,at_startup}. Make
VM.VCPUs/params a string -> string map.
This is the modelling, the C bindings, and the message file -- Xend support to
follow.
Tim Deegan [Tue, 30 Jan 2007 18:30:27 +0000 (18:30 +0000)]
[HVM] Save/restore: Reset PIT period correctly
This fixes some time-speedup after restore in guests that use the PIT. Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Keir Fraser [Tue, 30 Jan 2007 16:23:43 +0000 (16:23 +0000)]
Clean up arch_get_xen_caps() to not use sprintf().
Based on a patch from Christoph Egger <Christoph.Egger@amd.com> Signed-off-by: Keir Fraser <keir@xensource.com>