]> xenbits.xensource.com Git - xen.git/log
xen.git
17 years ago[VTD] dynamically determines whether to link with libpci or not in QEMU.
Keir Fraser [Thu, 20 Sep 2007 08:40:49 +0000 (09:40 +0100)]
[VTD] dynamically determines whether to link with libpci or not in QEMU.

This patch to ioemu/Makefile.target dynamically decides whether to
link with libpci or not base on the existence of /usr/include/pci
directory.

If /usr/include/pci exists, PCI passthrough is enabled.  Otherwise, it
is disabled.

Signed-off-by: Allen Kay <allen.m.kay@intel.com>
17 years agolibxc portability fixes for NetBSD.
kfraser@localhost.localdomain [Wed, 19 Sep 2007 14:42:56 +0000 (15:42 +0100)]
libxc portability fixes for NetBSD.

 - use MAP_ANON, that is what both (BSD-)Unix and Linux have
 - change last_error handling to use pthreads
 - round mlock() parameters to page alignment
 - cleanup: No need to include <xen/sys/privcmd.h>
            a second time in xg_private.h

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoia64: Fix target for Linux image install.
kfraser@localhost.localdomain [Wed, 19 Sep 2007 14:20:56 +0000 (15:20 +0100)]
ia64: Fix target for Linux image install.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
17 years agovmx: Print VMCS state in a more helpful format.
kfraser@localhost.localdomain [Wed, 19 Sep 2007 14:18:23 +0000 (15:18 +0100)]
vmx: Print VMCS state in a more helpful format.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agohvm: Always keep canonical copy of RIP/RSP/RFLAGS in
kfraser@localhost.localdomain [Wed, 19 Sep 2007 13:25:44 +0000 (14:25 +0100)]
hvm: Always keep canonical copy of RIP/RSP/RFLAGS in
guest_cpu_user_regs(). Reduces complexity at little or no performance
cost (except on really old Intel P4 hardware where VMREAD/VMWRITE are
silly expensive).
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoUsing "make install" causes a distro specific script
Ian Campbell [Wed, 19 Sep 2007 11:12:49 +0000 (12:12 +0100)]
Using "make install" causes a distro specific script
(/sbin/installkernel) to be called since linux-2.6.18-xen.hg
211:c1f5d027adf7.

Unfortunately on some distros this script is broken for non-root
use. Our needs are pretty simple anyway so just open code the
installation of the kernel.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
17 years ago[shadow] Be smarter about what we check to avoid unnecessary brute-force searches
George Dunlap [Wed, 19 Sep 2007 10:58:04 +0000 (11:58 +0100)]
[shadow] Be smarter about what we check to avoid unnecessary brute-force searches

The old code checked only if the page was still a pagetable before
doing a brute-force search, rather than checking if it was still
shadowed as the type indicated.  This meant that if a page was shadowed
as two different types, it was guaranteed to do a full brute-force search
even if all references could be found by up-pointers.

This checks the proper thing so that it will only do a brute-force if
necessary.

It also re-orders the unshadows so that higher levels are done first.  In
many cases, lower-level shadows will be destroyed in the process of
higher-level shadows being destroyed, again saving brute-force searches.

17 years ago[SHADOW] Use fast-unshadow for early_unshadow heuristic.
George Dunlap [Wed, 19 Sep 2007 10:42:05 +0000 (11:42 +0100)]
[SHADOW] Use fast-unshadow for early_unshadow heuristic.

17 years agohvm: hvm_{load,store}_cpu_guest_regs() does not touch segment
kfraser@localhost.localdomain [Wed, 19 Sep 2007 09:24:24 +0000 (10:24 +0100)]
hvm: hvm_{load,store}_cpu_guest_regs() does not touch segment
selectors. We have separate accessors for that now. It is now an
invariant that guest_cpu_user_regs()->{cs,ds,es,fs,gs,ss} are invalid
for an HVM guest.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoPCI passthru various Xen changes.
kfraser@localhost.localdomain [Wed, 19 Sep 2007 08:24:20 +0000 (09:24 +0100)]
PCI passthru various Xen changes.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agoPCI passthru: VT-d I/O hooks.
kfraser@localhost.localdomain [Wed, 19 Sep 2007 08:12:06 +0000 (09:12 +0100)]
PCI passthru: VT-d I/O hooks.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agoIRQ injection changes for HVM PCI passthru.
kfraser@localhost.localdomain [Tue, 18 Sep 2007 15:09:19 +0000 (16:09 +0100)]
IRQ injection changes for HVM PCI passthru.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agoLog an error when enabling shadow mode fails for live relocation.
kfraser@localhost.localdomain [Tue, 18 Sep 2007 14:11:39 +0000 (15:11 +0100)]
Log an error when enabling shadow mode fails for live relocation.
Signed-off-by: Doug Merrill <dpmerrill@novell.com>
17 years agoEvaluate XEN_GUEST_HANDLE_64 twice.
kfraser@localhost.localdomain [Tue, 18 Sep 2007 14:09:57 +0000 (15:09 +0100)]
Evaluate XEN_GUEST_HANDLE_64 twice.

This fixes a build error for PV guests (OpenBSD, NetBSD) where the use
of XEN_GUEST_HANDLE_64(uint8_t) leads to a build error because uint8_t
is a #define and not a typedef.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
17 years agoxm: Extend width of ID in 'xm list --label' to 5 digits
kfraser@localhost.localdomain [Tue, 18 Sep 2007 14:08:11 +0000 (15:08 +0100)]
xm: Extend width of ID in 'xm list --label' to 5 digits
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years ago[VTPM] VTPM manager -- Fix parameter check
kfraser@localhost.localdomain [Tue, 18 Sep 2007 14:06:20 +0000 (15:06 +0100)]
[VTPM] VTPM manager -- Fix parameter check

If vtpm_managed is started with the same vtpm instance, the following
error occurs.

++++++++++++
 Loading NVM.
         Sending LoadNVM command
 INFO[VTSP]: Unbinding 256 bytes of data.
 ERROR in VTSP_Unbind at vtsp.c:719 code: TPM_BAD_PARAMETER.
 ERROR in envelope_decrypt at securestorage.c:156
 code:TPM_BAD_PARAMETER.
 ERROR[VTPM]: Failed to envelope decrypt data
 .ERROR in VTPM_Handle_Load_NVM at securestorage.c:284 code:
 TPM_BAD_PARAMETER.
 ERROR[VTPM]: Failed to load NVM
 .INFO[VTPM]: [VTPM Listener]: VTPM Listener waiting for messages.
         Reading LoadNVM header
++++++++++++

Signed-off-by: Kouichi YASAKI <yasaki.kouichi@jp.fujitsu.com>
17 years ago[VTPM] Fix vTPM function in HVM domain
kfraser@localhost.localdomain [Tue, 18 Sep 2007 14:05:38 +0000 (15:05 +0100)]
[VTPM] Fix vTPM function in HVM domain

In Windows on HVM domain, GetPubkey function and Seal function become
an error.

Signed-off-by: Kouichi YASAKI <yasaki.kouichi@jp.fujitsu.com>
17 years agoIntercept TS on SVM.
Steven Hand [Tue, 18 Sep 2007 13:59:25 +0000 (14:59 +0100)]
Intercept TS on SVM.

Signed-off-by: Steven Hand <steven@xensource.com>
17 years agoRevert 15826:447db1235adf1bc59bbd76c951716c3df7ee8843.
kfraser@localhost.localdomain [Tue, 18 Sep 2007 12:43:30 +0000 (13:43 +0100)]
Revert 15826:447db1235adf1bc59bbd76c951716c3df7ee8843.

Re-enables NMI delivery in HVM guests now that hardware task switching
is emulated.

Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agohvm: Support hardware task switching.
kfraser@localhost.localdomain [Tue, 18 Sep 2007 10:49:42 +0000 (11:49 +0100)]
hvm: Support hardware task switching.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agohvm: New HVM function hvm_set_segment_register().
kfraser@localhost.localdomain [Mon, 17 Sep 2007 12:33:09 +0000 (13:33 +0100)]
hvm: New HVM function hvm_set_segment_register().
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years ago[XEN] p2m: internal p2m_set_entry() function uses types rather than
Tim Deegan [Mon, 17 Sep 2007 09:38:59 +0000 (10:38 +0100)]
[XEN] p2m: internal p2m_set_entry() function uses types rather than
having callers decode them.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
17 years agoIntel vt-d specific changes in arch/x86/hvm/vmx/vtd.
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:40:49 +0000 (16:40 +0100)]
Intel vt-d specific changes in arch/x86/hvm/vmx/vtd.

Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agoPCI passthru: tools changes (generic and vt-d)
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:39:27 +0000 (16:39 +0100)]
PCI passthru: tools changes (generic and vt-d)

I have added CONFIG_PASSTHROUGH in ioemu/Makefile.target and
ioemu/hw/pc.c in attached vtd_tools2.patch.  This should turn off
libpci usage by default until user specifically enables it.

This can be safely check-in without breaking builds for people who do
not care about pass-through devices.  I will try to think of a better
way to enable this.

Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agox86: fix NUMA code for 32bit
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:10:08 +0000 (16:10 +0100)]
x86: fix NUMA code for 32bit

I don't know how significant this is (most of the NUMA node data seems
unused at this point), but anyway: enable proper operation of NUMA
emulation and the fake NUMA node in case there's no SRAT table on
x86-32. This will at least make the "Faking node ..." message not
print confusing information anymore.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
17 years agoqemu-dm: fix block-raw io debug print
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:08:39 +0000 (16:08 +0100)]
qemu-dm: fix block-raw io debug print
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
17 years agoFix xm dump-core command for paused domain.
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:07:18 +0000 (16:07 +0100)]
Fix xm dump-core command for paused domain.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoFix 'xm reboot'
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:05:39 +0000 (16:05 +0100)]
Fix 'xm reboot'
Signed-off-by: Jim Fehlig <jfehlig@novell.com>
17 years agoFix two memory leaks in xend.
kfraser@localhost.localdomain [Fri, 14 Sep 2007 15:04:33 +0000 (16:04 +0100)]
Fix two memory leaks in xend.
Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
17 years agoLet Xen cmdline boolean options be specified as "=0", "=1", "=false", "=true".
kfraser@localhost.localdomain [Fri, 14 Sep 2007 13:36:54 +0000 (14:36 +0100)]
Let Xen cmdline boolean options be specified as "=0", "=1", "=false", "=true".
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years ago[XEN] add typed p2m entry-setting function
Tim Deegan [Fri, 14 Sep 2007 08:52:47 +0000 (09:52 +0100)]
[XEN] add typed p2m entry-setting function
keeping the old one as a fallback for RAM mappings.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
17 years agoGeneric and VT-d specific Xen header changes for PCI passthru.
kfraser@localhost.localdomain [Wed, 12 Sep 2007 14:42:39 +0000 (15:42 +0100)]
Generic and VT-d specific Xen header changes for PCI passthru.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Signed-off-by: Guy Zana <guy@neocleus.com>
17 years agox86: allow Dom0 to drive PC speaker
kfraser@localhost.localdomain [Wed, 12 Sep 2007 14:32:58 +0000 (15:32 +0100)]
x86: allow Dom0 to drive PC speaker
as long as Xen doesn't itself make use of PIT channel 2.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years ago[XEN] Fix assert in typed p2m code
Tim Deegan [Wed, 12 Sep 2007 08:58:16 +0000 (09:58 +0100)]
[XEN] Fix assert in typed p2m code
as spotted by GCC-4's enthusiastic warnings.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
17 years agodocs: Fix typos.
kfraser@localhost.localdomain [Wed, 12 Sep 2007 08:43:33 +0000 (09:43 +0100)]
docs: Fix typos.
Signed-off-by: Atsushi SAKAI <sakaia@jp.fujitsu.com>
17 years ago[xm-test] Set "console=xvc0" for xm-test guests on Intel architecture platforms.
James Bulpin [Tue, 11 Sep 2007 18:11:02 +0000 (19:11 +0100)]
[xm-test] Set "console=xvc0" for xm-test guests on Intel architecture platforms.
Tests have been failing because the console for the test ramdisk wasn't using
xvc0 so testcases were not able to interact with it.

Signed-off-by: James Bulpin <james@xensource.com>
17 years ago[QEMU] Enhance raw io reliability
kfraser@localhost.localdomain [Tue, 11 Sep 2007 16:02:03 +0000 (17:02 +0100)]
[QEMU] Enhance raw io reliability

For raw block device only :
log any I/O error and perform automatic read retry for CDrom
(improves MediaCheck with old installers).

Signed-off-by: Ben Guthro <bguthro@virtualiron.com>
Signed-off-by: Josh Nicholas <jnicholas@virtualiron.com>
17 years agoqemu: Backport qemu vnc/event-loop fix from upstream.
kfraser@localhost.localdomain [Tue, 11 Sep 2007 16:00:25 +0000 (17:00 +0100)]
qemu: Backport qemu vnc/event-loop fix from upstream.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agohvmloader: ACPI DSDT dynamically indicates presence of COM1/COM2 ports
kfraser@localhost.localdomain [Tue, 11 Sep 2007 15:48:02 +0000 (16:48 +0100)]
hvmloader: ACPI DSDT dynamically indicates presence of COM1/COM2 ports
according to qemu emulation.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoFix memory leak in xend
kfraser@localhost.localdomain [Tue, 11 Sep 2007 12:41:15 +0000 (13:41 +0100)]
Fix memory leak in xend

I found that xend's memory usage grows considerably when running a
script such as

while true; do xm new foo ; sleep 2s; xm delete foo ; sleep 2s; done

XendAPIStore maintains a list of class instances and in the case of
new/create operation, an associated VMMetrics object is stashed in the
list but never removed on delete/shutdown.  This patch removes the
instance by invoking XendBase.destroy() method.

Signed-off-by: Jim Fehlig <jfehlig@novell.com>
17 years agoAdd 'type vnc' to vfb device sexpr for HVM guest
kfraser@localhost.localdomain [Tue, 11 Sep 2007 12:40:44 +0000 (13:40 +0100)]
Add 'type vnc' to vfb device sexpr for HVM guest

This patch adds 'type vnc' to vfb device sexpr for HVM guests.  PV
guests already contain this entry in sexpr, e.g.

    (device
        (vfb
            (vncunused 1)
            ...
           (type vnc)
            ...
        )
    )

Some tools, such as libvirt, look for device/vfb/type in sexpr before
publishing VNC port.  More importantly, this patch provides
consistency in vfb device sexpr between HVM and PV guests.

Signed-off-by: Jim Fehlig <jfehlig@novell.com>
17 years agoXend: "shadow_memory" setting in xm config is in MiB, not bytes.
Tim Deegan [Tue, 11 Sep 2007 11:30:39 +0000 (12:30 +0100)]
Xend: "shadow_memory" setting in xm config is in MiB, not bytes.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
17 years agox86: Clean up asm keyword usage (asm volatile rather than __asm__
kfraser@localhost.localdomain [Tue, 11 Sep 2007 11:14:38 +0000 (12:14 +0100)]
x86: Clean up asm keyword usage (asm volatile rather than __asm__
__volatile__ in most places) and ensure we use volatile keyword
wherever we have an asm stmt that produces outputs but has other
unspecified side effects or dependencies other than the
explicitly-stated inputs.

Also added volatile in a few places where its not strictly necessary
but where it's unlikely to produce worse code and it makes our
intentions perfectly clear.

The original problem this patch fixes was tracked down by Joseph
Cihula <joseph.cihula@intel.com>.

Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agox86: Use halt() macro instead of direct HLT asm.
kfraser@localhost.localdomain [Tue, 11 Sep 2007 10:21:44 +0000 (11:21 +0100)]
x86: Use halt() macro instead of direct HLT asm.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoxenstore: Remove incorrect comment.
kfraser@localhost.localdomain [Tue, 11 Sep 2007 07:34:04 +0000 (08:34 +0100)]
xenstore: Remove incorrect comment.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agomerge with xen-unstable.hg (staging)
Alex Williamson [Mon, 10 Sep 2007 19:58:56 +0000 (13:58 -0600)]
merge with xen-unstable.hg (staging)

17 years ago[IA64] Use xc_map_foreign_pages() in copy_from_GFW_to_nvram()
Alex Williamson [Mon, 10 Sep 2007 19:56:34 +0000 (13:56 -0600)]
[IA64] Use xc_map_foreign_pages() in copy_from_GFW_to_nvram()

use xc_map_foreign_pages() where possible

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Cleanup within vti code
Alex Williamson [Mon, 10 Sep 2007 19:52:19 +0000 (13:52 -0600)]
[IA64] Cleanup within vti code

Makes more functions/variables static.
Indentation changes to make the code easier to read.

Signed-off-by: Tristan Gingold <tgingold@free.fr>
17 years agox86: Cleanup system restart code, and wait 10ms for APs to offline.
kfraser@localhost.localdomain [Mon, 10 Sep 2007 17:09:38 +0000 (18:09 +0100)]
x86: Cleanup system restart code, and wait 10ms for APs to offline.
Signed-off-by: Joseph Cihula <joseph.cihula@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agox86: Handle 'self-IPI' on legacy UP systems with no APIC.
kfraser@localhost.localdomain [Mon, 10 Sep 2007 16:49:58 +0000 (17:49 +0100)]
x86: Handle 'self-IPI' on legacy UP systems with no APIC.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoChange prototype of machine_restart to void machine_restart(void).
kfraser@localhost.localdomain [Mon, 10 Sep 2007 15:51:20 +0000 (16:51 +0100)]
Change prototype of machine_restart to void machine_restart(void).
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agovmx: Sync with SVM TPR/CR8 changes.
kfraser@localhost.localdomain [Mon, 10 Sep 2007 15:13:35 +0000 (16:13 +0100)]
vmx: Sync with SVM TPR/CR8 changes.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agosvm: Greatly reduce total number of CR8 intercepts
kfraser@localhost.localdomain [Mon, 10 Sep 2007 15:13:13 +0000 (16:13 +0100)]
svm: Greatly reduce total number of CR8 intercepts

This patch reduces the number of CR8 intercept to a fraction of the
number of CR8 intercepts without.  First, CR8 read intercepts are
completely disabled since the SVM vTPR is kept kept in sync with the
HVM vLAPIC TPR.  Second, CR8 write intercepts are enabled and disabled
based upon certain conditions.  Most of the time, CR8 write intercepts
are disabled.  They are enabled only when there is a pending interrupt
that can't be delivered because of either the current ISR or TPR (aka
PPR) because this is the only time the TPR matters.

With this patch, the number of CR8 intercepts dropped from around
10,000,000 to around 6,000 during boot of Windows 2003 Server 64-bit
(this is a rough estimate).

Signed-off-by: Travis Betak <travis.betak@amd.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years ago[HVM] Add type information to the p2m map.
Tim Deegan [Mon, 10 Sep 2007 13:42:30 +0000 (14:42 +0100)]
[HVM] Add type information to the p2m map.
This is a base for memory tricks like page sharing, copy-on-write, lazy
allocation etc.  It should also make pass-through MMIO easier to
implement in the p2m.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
17 years ago[libxen] Compilation fix.
kfraser@localhost.localdomain [Mon, 10 Sep 2007 12:59:46 +0000 (13:59 +0100)]
[libxen] Compilation fix.

On a clean system where no prior dev. version of libxen was installed,
the compilation fails due to a wrong include. This fixes it.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
17 years agoRemove dead code in acpi sleep.
kfraser@localhost.localdomain [Mon, 10 Sep 2007 12:43:19 +0000 (13:43 +0100)]
Remove dead code in acpi sleep.
Signed-off-by Kevin Tian <kevin.tian@intel.com>

17 years agoInstall xen/xsm headers to .../usr/include/xen/xsm/
kfraser@localhost.localdomain [Sat, 8 Sep 2007 09:06:15 +0000 (10:06 +0100)]
Install xen/xsm headers to .../usr/include/xen/xsm/
Signed-off-by: Ben Guthro <bguthro@virtualiron.com>
17 years agomerge with xen-unstable.hg (staging)
Alex Williamson [Fri, 7 Sep 2007 19:56:50 +0000 (13:56 -0600)]
merge with xen-unstable.hg (staging)

17 years agohvm: Fix up guest_table handling after p2m changes.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 18:54:29 +0000 (19:54 +0100)]
hvm: Fix up guest_table handling after p2m changes.
Fixes a host crash on HVM guest restore.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agox86/32: Fix domain_relinquish_resources().
kfraser@localhost.localdomain [Fri, 7 Sep 2007 18:53:57 +0000 (19:53 +0100)]
x86/32: Fix domain_relinquish_resources().
Fixes a host crash on preempted domain_kill().
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoxc_map_foreign_pages(), a convenient alternative to xc_map_foreign_batch()
kfraser@localhost.localdomain [Fri, 7 Sep 2007 10:39:10 +0000 (11:39 +0100)]
xc_map_foreign_pages(), a convenient alternative to xc_map_foreign_batch()

xc_map_foreign_batch() can succeed partially.  It is awkward to use
when you're only interested in complete success.  Provide new
xc_map_foreign_pages() convenience function for that kind of use.
Also convert two obvious calls to use it.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
17 years agoFix error message and wait time for xm block-detach command.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 10:30:18 +0000 (11:30 +0100)]
Fix error message and wait time for xm block-detach command.

 - Wait time
    When xm requests a block device detach to xend, xm makes two
    requests. At first, xm requests the block device detach by device
    class 'vbd'. Next, xm requests the block device detaching by
    device class 'tap'.
    As a result, the wait time is 200 seconds because each of
    the block device detaching requests causes time-out.
 - Misleading error message
    Because the last request is by device class 'tap' to xend,
    the keyword "(tap)" is included in the error message.

This patch fixes the number of times of the block device detaching
request to one time.  At first, xm makes inquiries about device
class of a detaching target device to xend.  Then xm requires the
block device detaching by xend returned device class.  The wait
time becomes 100 seconds because the block device detaching request
is one time.  And the error message is also fixed.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoxend: Fix error message for xm trigger command.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 10:24:28 +0000 (11:24 +0100)]
xend: Fix error message for xm trigger command.

When I tested xm trigger command with a wrong argument, I saw the
following error message.

 # xm trigger vm1 xyz
 Error: __init__() takes exactly 2 arguments (3 given)
 Usage: xm trigger <Domain> <nmi|reset|init> [<VCPU>]

 Send a trigger to a domain.

This patch fixes the error message as follows.

 # xm trigger vm1 xyz
 Error: Invalid trigger: xyz
 Usage: xm trigger <Domain> <nmi|reset|init> [<VCPU>]

 Send a trigger to a domain.

The type of "TRIGGER_TYPE" is dictionary.  domain_send_trigger()
refers to the keys of "TRIGGER_TYPE" without using keys() currently.
This patch adds keys() there.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoxend: waitForDevices() on xm reboot.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 10:10:32 +0000 (11:10 +0100)]
xend: waitForDevices() on xm reboot.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoFix xenstored's dup2() usage.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 09:26:33 +0000 (10:26 +0100)]
Fix xenstored's dup2() usage.

The dup2() calls had their arguments reversed. Also remove the
unnecessary close() calls.

Signed-off-by: John Levon <john.levon@sun.com>
17 years agoPV-on-HVM: Fix non-SMP build warning for PV-on-HVM drivers.
kfraser@localhost.localdomain [Fri, 7 Sep 2007 09:18:54 +0000 (10:18 +0100)]
PV-on-HVM: Fix non-SMP build warning for PV-on-HVM drivers.

smp_call_function() compiles to nothing on non-SMP, so we had a
defined-but-not-used static function.

Based on an original patch by:
Signed-off-by: Ben Guthro <bguthro@virtualiron.com>
Signed-off-by: Robert Phillips <rphillips@virtualiron.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoCheck for libxml2 if security tools are to be built, and adapt the
kfraser@localhost.localdomain [Fri, 7 Sep 2007 08:48:35 +0000 (09:48 +0100)]
Check for libxml2 if security tools are to be built, and adapt the
python setup.py command line parameters to also work under SuSE.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
17 years ago[IA64] Foreign p2m: make xc_ia64_get_pfn_list() static
Alex Williamson [Thu, 6 Sep 2007 21:04:07 +0000 (15:04 -0600)]
[IA64] Foreign p2m: make xc_ia64_get_pfn_list() static

Now xc_ia64_get_pfn_list() isn't used anymore.  Make it static.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: rewrite save/restore with foreign p2m
Alex Williamson [Thu, 6 Sep 2007 21:36:13 +0000 (15:36 -0600)]
[IA64] Foreign p2m: rewrite save/restore with foreign p2m

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: xc_core: ia64 xc_core_arch_gpfn_may_present()
Alex Williamson [Thu, 6 Sep 2007 21:32:54 +0000 (15:32 -0600)]
[IA64] Foreign p2m: xc_core: ia64 xc_core_arch_gpfn_may_present()

Prevent warning message when xm dump-core
Using foreign p2m exposure, we can avoid to map the page which isn't allocated.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: test module
Alex Williamson [Thu, 6 Sep 2007 20:41:14 +0000 (14:41 -0600)]
[IA64] Foreign p2m: test module

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: libxc side
Alex Williamson [Thu, 6 Sep 2007 20:37:50 +0000 (14:37 -0600)]
[IA64] Foreign p2m: libxc side

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: xen side
Alex Williamson [Thu, 6 Sep 2007 20:13:38 +0000 (14:13 -0600)]
[IA64] Foreign p2m: xen side

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Foreign p2m: Fix vti domain builder.
Alex Williamson [Thu, 6 Sep 2007 19:48:43 +0000 (13:48 -0600)]
[IA64] Foreign p2m: Fix vti domain builder.

It should set arch_domain::convmem_end.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years ago[IA64] Add missing continuable destroy domain chunk
Alex Williamson [Thu, 6 Sep 2007 18:57:13 +0000 (12:57 -0600)]
[IA64] Add missing continuable destroy domain chunk

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
17 years ago[IA64] fix build - missing include
Alex Williamson [Thu, 6 Sep 2007 18:35:22 +0000 (12:35 -0600)]
[IA64] fix build - missing include

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
17 years agomerge with xen-unstable.hg (staging)
Alex Williamson [Thu, 6 Sep 2007 18:05:15 +0000 (12:05 -0600)]
merge with xen-unstable.hg (staging)

17 years agoFix domain restore after memory auto-balloon changes.
kfraser@localhost.localdomain [Thu, 6 Sep 2007 17:26:45 +0000 (18:26 +0100)]
Fix domain restore after memory auto-balloon changes.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoFix xm-test python import after XSM security changes.
kfraser@localhost.localdomain [Thu, 6 Sep 2007 17:10:04 +0000 (18:10 +0100)]
Fix xm-test python import after XSM security changes.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years ago[XSM] correctly rename, relocate and patch the security.py file
kfraser@localhost.localdomain [Thu, 6 Sep 2007 17:05:18 +0000 (18:05 +0100)]
[XSM] correctly rename, relocate and patch the security.py file

This patch corrects an error in the original XSM tools patch.  The
original patch did not rename, relocate and patch the security.py file
from changeset 15730:256160ff19b7.  This patch addresses this issue as
well as any updates made to security.py in xen-staging during the
merge of XSM.

Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
17 years ago[XSM] correctly located update_va_mapping hook within x86 ifdefs
kfraser@localhost.localdomain [Thu, 6 Sep 2007 17:04:42 +0000 (18:04 +0100)]
[XSM] correctly located update_va_mapping hook within x86 ifdefs

The following patch addresses the issue where the XSM update_va_mapping
hook was not correctly located inside the x86 ifdefs.  Included are
updates for the dummy and flask modules which are also effected by
this issue.

    - update_va_mapping ifdef fix for xsm
    - update_va_mapping ifdef fix for dummy module
    - update_va_mapping ifdef fix for flask module

Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
17 years ago[IA64] Supress warning of __assign_domain_page().
Alex Williamson [Thu, 6 Sep 2007 15:05:26 +0000 (09:05 -0600)]
[IA64] Supress warning of __assign_domain_page().

On Tiger, the following memory region triggers a warning.
It seems a false-positive warning caused by c/s 13123:90db0f68b121.
so suppress the warning in such a case.

EFI memory descriptor
(XEN) mem07: type= 5, attr=0x8000000000000009, range=[0x00000000000c0000-0x0000000000100000) (0MB)
type = EFI_RUNTIME_SERVICES_CODE
attribute = EFI_MEMORY_RUNTIME | EFI_MEMORY_WB | EFI_MEMORY_UC

from /proc/iomem
000a0000-000fffff : PCI Bus 0000:00
000c0000-000fffff : reserved

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Acked-by: Simon Horman <horms@verge.net.au>
17 years agohvm: Ignore NMI deliveries for now, until hardware taskswitch is emulated.
kfraser@localhost.localdomain [Thu, 6 Sep 2007 10:34:38 +0000 (11:34 +0100)]
hvm: Ignore NMI deliveries for now, until hardware taskswitch is emulated.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agohvm: Remove hvm-specific NMI flag and use generic flag instead.
kfraser@localhost.localdomain [Thu, 6 Sep 2007 10:31:02 +0000 (11:31 +0100)]
hvm: Remove hvm-specific NMI flag and use generic flag instead.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoDelete flask tools build target and add to .hgignore.
kfraser@localhost.localdomain [Thu, 6 Sep 2007 10:23:43 +0000 (11:23 +0100)]
Delete flask tools build target and add to .hgignore.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoBuild libflask unconditionally since the python low-level tools
Ian Campbell [Mon, 3 Sep 2007 14:04:03 +0000 (15:04 +0100)]
Build libflask unconditionally since the python low-level tools
require it and it does't seem to pull in any major dependencies.

The alternative would have been to hack tools/python/setup.py to
conditionally compile the flask stuff.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
17 years agoFix 64 bit build, cannot mix code and data declarations.
Ian Campbell [Mon, 3 Sep 2007 13:58:35 +0000 (14:58 +0100)]
Fix 64 bit build, cannot mix code and data declarations.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
17 years agoImplement x86 continuable domain destroy.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 16:00:11 +0000 (17:00 +0100)]
Implement x86 continuable domain destroy.
This patch addresses the following bug report.
http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1037
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years agoxend: Always build lowlevel security modules, as there are some
kfraser@localhost.localdomain [Fri, 31 Aug 2007 15:50:26 +0000 (16:50 +0100)]
xend: Always build lowlevel security modules, as there are some
dependencies on these from with xend proper.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoImplement ia64 continuable domain destroy.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 14:46:37 +0000 (15:46 +0100)]
Implement ia64 continuable domain destroy.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years agoMake XEN_DOMCTL_destroydomain hypercall preemptible, in a way that is
kfraser@localhost.localdomain [Fri, 31 Aug 2007 14:44:38 +0000 (15:44 +0100)]
Make XEN_DOMCTL_destroydomain hypercall preemptible, in a way that is
visible to the caller (via -EAGAIN return code).

This prevents softlockup in dom0 kernel, due to the hypercall taking
too long to execute on very large (multi-multi-gigabyte) domains.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agolibxenctrl: xc_destroy_domain() handles EAGAIN.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 14:43:28 +0000 (15:43 +0100)]
libxenctrl: xc_destroy_domain() handles EAGAIN.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
17 years agoxend: Correct indexing in xc_cpu_to_node_t map.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 13:14:14 +0000 (14:14 +0100)]
xend: Correct indexing in xc_cpu_to_node_t map.
Signed-off-by: Beth Kon <eak@us.ibm.com>
17 years agoxend: Add blktap disk type check
kfraser@localhost.localdomain [Fri, 31 Aug 2007 13:11:15 +0000 (14:11 +0100)]
xend: Add blktap disk type check

Print the following error when you give a wrong disk type to xm commands:
 # xm create /xen/vm1.conf disk='tap:xxx:/xen/root-vm1.img,hda1,w'
 Using config file "/xen/vm1.conf".
 Error: tap:xxx not a valid disk type

 # xm block-attach vm2 tap:yyy:/xen/second.img hdb1 w
 Error: tap:yyy not a valid disk type
 Usage: xm block-attach <Domain> <BackDev> <FrontDev> <Mode>
 [BackDomain]

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoAdd line termination to 'echo' usage in network-bridge script.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 13:09:05 +0000 (14:09 +0100)]
Add line termination to 'echo' usage in network-bridge script.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
17 years agoFix handling of auto-generated file xsm.py.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 11:12:27 +0000 (12:12 +0100)]
Fix handling of auto-generated file xsm.py.
Signed-off-by: Keir Fraser <keir@xensource.com>
17 years agoCleanups after XSM checkin.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 11:05:07 +0000 (12:05 +0100)]
Cleanups after XSM checkin.
Signed-off-by: Keir Fraser <keir@xensource.com>
--HG--
rename : xen/include/public/acm.h => xen/include/public/xsm/acm.h
rename : xen/include/public/acm_ops.h => xen/include/public/xsm/acm_ops.h
rename : xen/include/acm/acm_core.h => xen/include/xsm/acm/acm_core.h
rename : xen/include/acm/acm_endian.h => xen/include/xsm/acm/acm_endian.h
rename : xen/include/acm/acm_hooks.h => xen/include/xsm/acm/acm_hooks.h

17 years agoXen Security Modules: ACM.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 10:41:49 +0000 (11:41 +0100)]
Xen Security Modules: ACM.
Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
17 years agoXen Security Modules: Tools.
kfraser@localhost.localdomain [Fri, 31 Aug 2007 10:37:20 +0000 (11:37 +0100)]
Xen Security Modules: Tools.
Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
17 years agoXen Security Modules: FLASK
kfraser@localhost.localdomain [Fri, 31 Aug 2007 10:31:18 +0000 (11:31 +0100)]
Xen Security Modules: FLASK
Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>