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>
Ian Campbell [Tue, 30 Jan 2007 13:46:48 +0000 (13:46 +0000)]
Push the target to build foreign headers into tools and xen
directories. This allows those directories to be built independently
without relying on the toplevel Makefile.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
Emmanuel Ackaouy [Tue, 30 Jan 2007 12:33:43 +0000 (12:33 +0000)]
[XEN] 32on64 fix compat page table shutdown
When releasing the guest page table, do not clobber the xen private
L4 page pointer which is managed by setup/release_compat_l4.
Ewan Mellor [Mon, 29 Jan 2007 12:11:13 +0000 (12:11 +0000)]
Rename VM.otherConfig to VM.other_config, for consistency with the other fields,
and implement add_to_other_config and remove_from_other_config in the C
bindings.
Ewan Mellor [Sun, 28 Jan 2007 17:21:37 +0000 (17:21 +0000)]
Make session.this_host and session.this_user ROrun -- they are implicitly set
by a call to session.login_with_password, and cannot be created through a
constructor.
[HVM] When guest explicitly modifies the TSC, update platform timers
_after_ updating guest time (since otherwise pt_reset() will get the
old hvm_get_guest_time() and subsequently pt_intr_post() will warp
the TSC back again).
This is the smallest fix for the HVM SMP TSC issues seen on recent
(viz. 2.6.18+) linux HVM kernels, but probably not the best. Cleaner
fix needs more thought.