kaf24@localhost.localdomain
b8ca0e6839
[HVM] Rationalise OEM and Creator IDs and Table Revisions.
...
Create virtualised IDs and use them consistently.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-12-30 15:45:13 +00:00
kaf24@localhost.localdomain
5737d00f0d
[HVM][VMX] Fix regs set/get decoding in VMXAssist.
...
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com >
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-12-28 17:09:34 +00:00
kfraser@localhost.localdomain
40574f04b4
VMXAssist cleanups
...
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-12-07 11:18:38 +00:00
kfraser@localhost.localdomain
b3fba4e07b
Remove useless segments push/pop in VMXAssist.
...
According to Intel Spec, segments registors are cleared when exiting
virtual-8086 mode through trap or interrupts gate, so it's no need to
save their values in stack.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-12-04 09:20:12 +00:00
kfraser@localhost.localdomain
9e4d84f047
[VMXASSIST] Fix the wrong order definition of ES/DS in regs structure.
...
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-11-27 10:08:12 +00:00
kfraser@localhost.localdomain
1b3e78b73d
[VMXASSIST] Remove unused variable declarations to avoid compiler warning.
...
Signed-off-by: Ben Thomas <ben@virtualiron.com >
2006-11-14 10:48:17 +00:00
kaf24@localhost.localdomain
b991dfcee5
[VMXASSIST] Support all data segments in mov_to_seg().
...
This patch lets Plan9 crash at the same location before the original
patch by Stephen Tweedie.
Signed-off-by: Steven Rostedt <srostedt@redhat.com >
2006-11-11 01:16:40 +00:00
kfraser@localhost.localdomain
501330f105
[VMXASSIST] Emulate pop %ds and mov reg->{ds,es}.
...
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-11-10 17:21:54 +00:00
kfraser@localhost.localdomain
21b5e9be6a
[VMXASSIST] Fix mishandling of segment registers on entry into VM86_PROTECTED mode.
...
The bug occurs when the guest is entering protected mode and reaches
the far jump to set up the 32-bit segment registers for the virtual
VMENTER we're about to perform. vmxassist, in protected_mode(), looks
at the segment registers, which might be 16-bit segments or might be
32-bit segment selectors at this stage (depending on whether the OS
has reloaded them since entering protected mode); and it tries to load
the segments from the GDT. Unconditionally. Even if the segment
register still actually contains a real mode 16-bit segment. Whoops.
vmxassist already has code to detect 16-bit segments that survived
unmodified from a transition into and out of protected mode, and to
save and restore those appropriately. It does this using
"saved_rm_regs", which get cleared on entry to protected mode, and
then set to the old segment value if we fail to set a given 32-bit
segment correctly.
The fix is to save the 16-bit segments *always*, on entry to protected
mode when %CR0(PE) is first set; and to clear the saved 16-bit segment
and set the 32-bit variant in oldctx whenever a 32-bit segment
descriptor is set during the transition to 32-bit CS. Then, when we
finally do the VMENTER, we will set up the VMCS from only the 32-bit
segments, clearing the VMCS entries for segments that have not been
assigned valid 32-bit segments yet.
Tested on various RHEL-5 boot.isos, including ones which worked before
and ones which triggered the bug; all now boot correctly.
Signed-off-by: Stephen Tweedie <sct@redhat.com >
2006-11-09 14:00:40 +00:00
kfraser@localhost.localdomain
725cc28901
[HVM] Clean up VCPU initialisation in Xen. No longer
...
parse HVM e820 tables in Xen (add some extra HVM parameters as a
cleaner alternative). Lots of code removal.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-11-02 15:55:51 +00:00
kaf24@firebug.cl.cam.ac.uk
86d55ec10a
[VMXASSIST] Some reports that macros do not get picked up by CPP
...
if they are prefixed with $. Fix by placing macro uses in ().
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-10-19 22:05:07 +01:00
kfraser@localhost.localdomain
da161aeaa8
[HVM][VMX] Use CPUID instruction virtualization to workaround VMXAssist 4G limit.
...
Address space access limit in VMXAssist is 4G, because IA-32 only has
4GB virtual address space which VMXassist can use to map physical
memory. The issue is, win2k3 server with more than 4G memory will put
AP GDT above 4G, so when AP changes its mode from real mode to PAE
paging mode, the long jump instrction it uses need access AP GDT
entries which resides above 4G, but because of this constraint, it can
not access GDT and so fails boot.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-10-19 15:49:16 +01:00
kfraser@localhost.localdomain
f9038804d6
Replace test-gcc-flag with Linux-style cc-option.
...
Improve on Linux implementation by looking for any output
on stdout/stderr. This indicates badness.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-10-18 19:14:34 +01:00
kfraser@localhost.localdomain
ea847a59dc
Clean up linker flag definitions.
...
1. GNU ld does not understand -m{32,64}. It must be cooked for it by
the GCC driver program.
2. Where GNU ld is directly called we must use -melf_{i386,x86_64}.
3. We cannot avoid calling GNU ld directly in some cases (e.g., when
specifying GNU-specific linker scripts) as on some host
architectures the GCC driver is configured to call the host
linker.
4. We cannot add -melf_{i386,x86_64} to LDFLAGS as the option is
not recognised by GCC.
Hence we define new LDFLAGS_DIRECT, to be added to the command line
only when invoking GNU ld directly.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-10-18 16:56:27 +01:00
kaf24@firebug.cl.cam.ac.uk
137a9ce8c7
[HVM] Add RDMSR/WRMSR instruction emulation to VMXAssist decoder
...
AP of PAE SMP windows will use it to set NX bit in EFER.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-09-30 11:11:54 +01:00
kfraser@localhost.localdomain
b7b0acf60f
[VMXASSIST] Fix data32/addr32 instruction decode issue.
...
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com >
2006-09-29 11:11:49 +01:00
kfraser@localhost.localdomain
4ac7a6de2f
[VMXASSIST] Cast to pointer type via long to avoid compile
...
warnings/errors with latest gcc versions.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-09-27 17:49:22 +01:00
kaf24@firebug.cl.cam.ac.uk
2d5c2b773d
[VMXASSIST] Small fix to virt-to-phys translation.
...
CR4.PSE is ignored in PAE mode, so remove test of it.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-09-26 08:36:39 +01:00
kfraser@localhost.localdomain
681ed1d454
[VMXASSIST] Fix virt-to-phys translation routine.
...
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-09-25 18:19:30 +01:00
Steven Hand
f0cb8942c4
Fix vmxassist to boot Vista.
...
Currently, guest_linear_to_real to_real() in vmxassist assumes guest HVM
use 2 level page table when entering protect mode with PG enabled. Vista
uses 3 level (PAE enabled) page table, so memory addressing is wrong.
This patch fixes it, by considering all 4 possible cases.
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com >
2006-09-22 12:14:22 +01:00
kfraser@localhost.localdomain
01c74dcb72
[VMX] Fix vmxassist for booting Vista.
...
This patch fixes 2 vmxassist bugs to boot Vista:
1) When switching from VM86_REAL_TO_PROTECTED to VM86_PROTECTED,
protected_mode() sets return eip to switch_to_protected_mode and
segments to vmxassist's. But in later set_mode(), it still consides
these segments are guest's (Bios at this time) and use its gdt table
to calculate address(), which results in segment limitation fault. 2) In
current vmxassist, when entering VM86_PROTECTED_TO_REAL, we need to
decode every instruction manually until we catch instructions like
jmpl to reset cs to really return to real mode. Vista boot manager uses
more instructions.
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com >
2006-08-15 10:45:05 +01:00
kfraser@localhost.localdomain
386f9501d5
[VMX] Fix VMX ap boot.
...
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-08-15 10:43:43 +01:00
kfraser@localhost.localdomain
7af667dcc6
[VMXASSIST] Fix linker script to define start/end section labels
...
in the usual idiomatic way. This avoids some BSS symbols being
defined oustide of range _sbss/_ebss.
Issue raised by Xiaowei Yang from Intel.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-08-14 17:56:59 +01:00
kaf24@localhost.localdomain
848ded1e09
[XEN] Clean up e820 definitions. Define shared set in hvm public dir.
...
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-08-13 17:47:59 +01:00
kfraser@localhost.localdomain
f0667416be
[VMXASSIST] Fix GDTR accesses when paging mode enabled.
...
The gdtr information in oldctx is an address for guest, not for
vmxassist. When access descriptor on guest gdt, we need to go through
guest page table if guest enable paging. This error may happen if
guest enable PE/PG in one instruction.
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com >=20
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-08-02 10:03:04 +01:00
chris@kneesaa.uk.xensource.com
1aa6701ce1
[VMXASSIST] Include all rodata sections into text section.
...
Some versions of ld put non-matched sections into random locations otherwise.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com >
2006-07-10 18:35:07 +01:00
kaf24@firebug.cl.cam.ac.uk
3e19af6e66
[VMXASSIST] Extensions to vmxassist to handle additional mode switch cases.
...
Extends vmxassist to handle two cases related to mode switching found
while experimenting with different boot loaders.
The first case is use of the JMP instruction with memory location
operands to complete a switch to protected mode. This patch adds
emulation for this form of the JMP instruction to vmxassist.
The second case is where boot loader code does not save/restore a
non-zero SS register across a protected mode traversal.
Zeroing the SS register in vmxassist results in all sorts of problems
in the domU after returning back to real mode. This patch stores
segment register values before entering protected mode and correctly
restores the old values (instead of an incorrect zero value) when
reentering real mode.
Signed-off-by: Kevin Tronkowski <ktronkowski@virtualiron.com >
2006-06-05 15:18:13 +01:00
kaf24@firebug.cl.cam.ac.uk
2256643d06
Trivial patch to fix x86_64 builds in which XEN_TARGET_ARCH
...
is specified on the make command line, e.g.:
make XEN_TARGET_ARCH=x86_64
This busted the vmxassist and hvmloader builds, which must
be done -m32. Using "override" in the vmxassist/hvmloader
Makefiles fixes the problem by not allowing this to be
overridden from the command line.
Signed-off-by: Dave Lively <dlively@virtualiron.com >
2006-04-14 14:18:39 +01:00
kaf24@firebug.cl.cam.ac.uk
b5fa90ac8e
build: Clean up use of .PHONY
...
* Move .PHONY directives next to targets,
this makes them a lot harder to miss
* Add missing .PHONY directives
* Remove nonexistent .PHONY directives
* Hopefully I didn'T miss anything...
Signed-Off-By: Horms <horms@verge.net.au >
2006-04-10 17:02:49 +01:00
kaf24@firebug.cl.cam.ac.uk
9cf21925de
This patch fixes several issues related to vmxassist:
...
1) AP bring up;
2) RHEL4 IA32e installation;
3) SLES10 IA32e installation;
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-04-01 14:59:12 +01:00
kaf24@firebug.cl.cam.ac.uk
85c024b331
Fix makefiles for hvmloader and vmxassist for FC5 on x86_64
...
systems.
In FC5, gcc has issues with the command lines used to build
hvmloader and vmxassist. Basically, the compiler doesn't
like the combination of -m64 and -m32. As these are 32 bit
apps, and intended to be, take a modified approach and simply
define XEN_TARGET_ARCH for 32 bits. This cleans up the
command line and builds the images correctly.
From: Ben Thomas <ben@virtualiron.com >
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-04-01 10:49:42 +01:00
kaf24@firebug.cl.cam.ac.uk
8c489ac453
The following patch adds support to vmxassist for SYSLINUX/ISOLINUX. This
...
enables you to install SLES-10 as an unmodified guest.
Notice that at this time, vmxassist does not support the graphic bootstrap
loader (gfxboot), so be sure the set "stdvga=1" in your configuration file
to prevent gfxboot from kicking in (or hit SHIFT really fast).
Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
2006-03-21 22:50:48 +01:00
kaf24@firebug.cl.cam.ac.uk
0a4522458b
Fix some warnings when compiling tools.
...
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-03-04 10:25:05 +01:00
kaf24@firebug.cl.cam.ac.uk
f7145c633e
Ignore external (user-provided) CFLAGS when building vmxassist and hvmloader.
...
They do more harm than good.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-03-03 10:44:40 +01:00
kaf24@firebug.cl.cam.ac.uk
dfd53f76ba
Fix tools Makefiles to respect CFLAGS. Disable stack-smash
...
protection when building vmxassist/hvmloader.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-02-28 11:41:54 +01:00
kaf24@firebug.cl.cam.ac.uk
434badf2d4
Clean up vmxassist/setup.c. It is no longer necessary to
...
switch to an alternate page table before entering the
real-mode emulator.
Signed-off-by: Xin B Li <xin.b.li@intel.com >
Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
2006-02-13 10:19:14 +01:00
kaf24@firebug.cl.cam.ac.uk
d1bd157fbc
Big merge the HVM full-virtualisation abstractions.
...
This changeset contains all differences between
xen-unstable.hg and xen-unstable-hvm.hg.
All information and comments for changesets unique to
xen-unstable-hvm.hg are included below.
Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
Signed-off-by: Keir Fraser <keir@xensource.com >
> user: leendert@eserver2.watson.ibm.com
> date: Tue Jan 31 04:29:51 2006 -0400
> files: xen/include/asm-ia64/mm.h
> description:
> Fix ia64 compile.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Tue Jan 31 02:21:49 2006 -0400
> files: xen/include/xen/domain_page.h
> description:
> Eliminate unused fields (pfn,va) warnings.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Fri Jan 27 04:31:44 2006 -0400
> files: tools/python/xen/xend/image.py
> description:
> Name cleanup. vmx refers to VT-x specific code, HVM is used for all others.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: root@xen-trw1.amd.com
> date: Sun Jan 22 18:39:58 2006 -0500
> files: xen/arch/x86/hvm/platform.c
> description:
> support prefix 0x67 in hvm decode logic, gfxboot patch causes 0x67 prefix.
>
>
> user: twoller@xen-trw1.amd.com
> date: Sun Jan 22 18:35:59 2006 -0500
> files: xen/arch/x86/hvm/svm/svm.c xen/arch/x86/hvm/svm/vmcb.c xen/include/asm-x86/hvm/svm/svm.h
> description:
> check for valid shared_page_va/vmcb before deallocating in SVM.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Jan 22 02:56:20 2006 -0400
> files: xen/include/asm-x86/hvm/svm/svm.h xen/include/asm-x86/hvm/svm/vmmcall.h
> description:
> Some SVM header file cleanups.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Fri Jan 20 11:50:23 2006 -0400
> files: xen/arch/x86/domain.c
> description:
> Need to be more diligent about when to call into the HVM abstraction layer
> and when not.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Wed Jan 18 15:14:56 2006 -0400
> files: xen/arch/x86/hvm/svm/svm.c xen/arch/x86/hvm/svm/x86_32/exits.S xen/arch/x86/hvm/svm/x86_64/exits.S xen/arch/x86/hvm/vmx/x86_32/exits.S xen/arch/x86/hvm/vmx/x86_64/exits.S
> description:
> Added missing copyright statements and updated svm.c's copyright to properly
> reflect that it was derived from vmx.c.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Tue Jan 17 09:42:11 2006 -0400
> files: xen/arch/ia64/Makefile xen/arch/ia64/vmx/vlsapic.c xen/arch/ia64/vmx/vmx_init.c xen/include/asm-ia64/vmx_platform.h
> description:
> Make sure ia64 builds again with the new directory structure.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@localhost.localdomain
> date: Tue Jan 17 08:28:51 2006 -0400
> files: xen/arch/x86/Makefile xen/arch/x86/hvm/i8259.c xen/arch/x86/hvm/vioapic.c
> description:
> The device models now belong in hvm.
>
> Signed-ff-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Jan 15 16:40:58 2006 -0400
> files: xen/arch/x86/Makefile xen/arch/x86/cpu/amd.c xen/arch/x86/cpu/intel.c xen/arch/x86/dm/hvm_vioapic.c xen/arch/x86/dm/i8259.c xen/arch/x86/dom0_ops.c xen/arch/x86/domain.c xen/arch/x86/hvm/hvm.c xen/arch/x86/hvm/intercept.c xen/arch/x86/hvm/io.c xen/arch/x86/hvm/platform.c xen/arch/x86/hvm/svm/emulate.c xen/arch/x86/hvm/svm/instrlen.c xen/arch/x86/hvm/svm/intr.c xen/arch/x86/hvm/svm/svm.c xen/arch/x86/hvm/svm/vmcb.c xen/arch/x86/hvm/svm/x86_32/exits.S xen/arch/x86/hvm/svm/x86_64/exits.S xen/arch/x86/hvm/vlapic.c xen/arch/x86/hvm/vmx/io.c xen/arch/x86/hvm/vmx/vmcs.c xen/arch/x86/hvm/vmx/vmx.c xen/arch/x86/hvm/vmx/x86_32/exits.S xen/arch/x86/hvm/vmx/x86_64/exits.S xen/arch/x86/i387.c xen/arch/x86/x86_32/entry.S xen/arch/x86/x86_32/traps.c xen/arch/x86/x86_64/entry.S xen/arch/x86/x86_64/traps.c xen/include/asm-x86/domain.h xen/include/asm-x86/hvm/domain.h xen/include/asm-x86/hvm/hvm.h xen/include/asm-x86/hvm/io.h xen/include/asm-x86/hvm/support.h xen/include/asm-x86/hvm/svm/emulate.h xen/include/asm-x86/hvm/svm/intr.h xen/include/asm-x86/hvm/svm/svm.h xen/include/asm-x86/hvm/svm/vmcb.h xen/include/asm-x86/hvm/svm/vmmcall.h xen/include/asm-x86/hvm/vcpu.h xen/include/asm-x86/hvm/vioapic.h xen/include/asm-x86/hvm/vlapic.h xen/include/asm-x86/hvm/vmx/cpu.h xen/include/asm-x86/hvm/vmx/vmcs.h xen/include/asm-x86/hvm/vmx/vmx.h xen/include/asm-x86/hvm/vpic.h xen/include/asm-x86/hvm/vpit.h xen/include/asm-x86/shadow.h
> description:
> As suggested by Keir, I restructured the hvm/vmx/svm tree. The new
> directory structure looks like:
>
> xen/arch/hvm/
> xen/arch/hvm/vmx
> xen/arch/hvm/vmx/x86_32
> xen/arch/hvm/vmx/x86_64
> xen/arch/hvm/svm
> xen/arch/hvm/svm/x86_32
> xen/arch/hvm/svm/x86_64
>
> xen/include/hvm/
> xen/include/hvm/vmx
> xen/include/hvm/svm
>
> Many files have been renamed and had their hvm_/vmx_/svm_ suffix removed
> because this is now clear from the directory where the file resides.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sat Jan 14 17:03:28 2006 -0400
> files: xen/arch/ia64/vmx/vlsapic.c xen/include/asm-ia64/vmx_platform.h
> description:
> Name change fix for ia64.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sat Jan 14 15:12:59 2006 -0400
> files: xen/arch/x86/dm/hvm_vioapic.c xen/arch/x86/dm/i8259.c xen/arch/x86/hvm.c xen/arch/x86/hvm_intercept.c xen/arch/x86/svm.c xen/arch/x86/svm_intr.c xen/arch/x86/svm_vmcb.c xen/arch/x86/vmx.c xen/arch/x86/vmx_io.c xen/arch/x86/vmx_vmcs.c xen/include/asm-x86/hvm_domain.h xen/include/asm-x86/hvm_vcpu.h
> description:
> Move VMX/SVM print buffer to hvm_domain.
>
> Cleanup variable names. The suffix hvm_ is redundant in hvm_domain.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: twoller@xen-trw1.site
> date: Fri Jan 13 17:03:18 2006 -0500
> files: xen/arch/x86/svm.c
> description:
> remove unnecessary spin_unlock in asid_fetch code for svm.
>
>
> user: twoller@xen-trw1.site
> date: Wed Jan 11 20:00:36 2006 -0500
> files: xen/arch/x86/svm.c
> description:
> remove unneeded update_pagetables() during svm PF handling (resolved with ASID code rework).
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Tue Jan 10 02:45:32 2006 -0400
> files: xen/arch/x86/hvm.c xen/arch/x86/vmx_io.c
> description:
> Factor out cpu_get_interrupt(). It is used by VMX and SVM.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Mon Jan 9 00:03:30 2006 -0400
> files: xen/arch/x86/hvm.c xen/arch/x86/svm.c xen/arch/x86/vmx.c xen/include/asm-x86/hvm_support.h xen/include/asm-x86/hvm_vcpu.h
> description:
> Introduce small print buffer per domain rather than a single global one.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Jan 8 23:07:12 2006 -0400
> files: xen/arch/x86/dom0_ops.c xen/include/asm-x86/hvm_support.h xen/include/public/arch-x86_32.h xen/include/public/arch-x86_64.h
> description:
> More cleanup. There is no point in distinguishing between SVM and VMX,
> a single HVM flag bit suffices.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Jan 8 12:05:59 2006 -0400
> files: xen/arch/x86/svm.c xen/arch/x86/vmx.c
> description:
> Both VMX & SVM now print writes to the debug port (0xE9) on the console.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sat Jan 7 13:55:27 2006 -0400
> files: xen/arch/x86/svm.c xen/arch/x86/svm_intr.c xen/arch/x86/svm_vmcb.c xen/arch/x86/vmx.c xen/arch/x86/vmx_io.c xen/arch/x86/vmx_vmcs.c xen/arch/x86/x86_32/asm-offsets.c xen/arch/x86/x86_64/asm-offsets.c xen/include/asm-x86/domain.h xen/include/asm-x86/vmx.h
> description:
> Introduce shorthands to improve code legibility.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Wed Jan 4 06:12:10 2006 -0400
> files: tools/examples/xmexample.hvm
> description:
> Minor spelling mistakes.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Wed Jan 4 03:37:55 2006 -0400
> files: xen/include/public/hvm/hvm_info_table.h xen/include/public/hvm/ioreq.h xen/include/public/hvm/vmx_assist.h
> description:
> Missed adding new files.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Mon Jan 2 01:23:54 2006 -0400
> files: tools/debugger/libxendebug/xendebug.c tools/libxc/xc_hvm_build.c
> description:
> Finalize Xin Li's patch: vmx/svm_identify is no longer necessary.
> Xen debug should test for HVM instead of VMX.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: twoller@xen-trw1.site
> date: Sun Jan 1 03:22:39 2006 -0500
> files: tools/ioemu/vl.c
> description:
> change hardcoded VTXEN to HVMXEN.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Jan 1 02:22:47 2006 -0400
> files: tools/libxc/xc_hvm_build.c tools/python/xen/xend/image.py xen/arch/x86/domain.c
> description:
> Avoid xen crash if there is no VMX support. If a platform
> doesn't support VMX, creating VMX domain will crash xen
> HV.
>
> Signed-off-by: Xin Li <xin.b.li@intel.com >
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
> [ vmx/svm_identify are still needed in hvm builder, but this may not
> really be necessary. I need to check this. - lvd ]
>
>
> user: twoller@xen-trw1.site
> date: Fri Dec 30 21:38:56 2005 -0500
> files: xen/arch/x86/svm.c xen/arch/x86/svm_vmcb.c xen/arch/x86/x86_32/entry.S xen/include/asm-x86/svm.h xen/include/asm-x86/svm_vmcb.h
> description:
> add multi-core support for guest ASIDs for SVM partitions.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Dec 25 20:44:43 2005 -0400
> files: tools/firmware/vmxassist/head.S
> description:
> Make sure vmxassist still works in its debug environment.
>
> Signed-Off-By: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Fri Dec 23 18:27:57 2005 -0400
> files: tools/libxc/xc_ia64_stubs.c
> description:
> Fixed libxc ia64, xend uses xc_hvm_build instead of xc_vmx_build.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: twoller@xen-trw1.site
> date: Wed Dec 21 21:39:17 2005 -0500
> files: xen/arch/x86/svm_intr.c xen/arch/x86/svm_vmcb.c
> description:
> cleanup of svm specific code.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Wed Dec 21 17:18:25 2005 -0400
> files: tools/python/xen/xm/tests/test_create.py tools/xm-test/README
> description:
> Minor name cleanups. xm-test isn't VMX specific. Instead use HVM.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 20 20:01:38 2005 -0500
> files: xen/arch/x86/svm_vmcb.c
> description:
> reword comments.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 20 20:01:07 2005 -0500
> files: xen/arch/x86/svm_intr.c
> description:
> add additional VLAPIC delivery modes.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 20 20:00:22 2005 -0500
> files: xen/arch/x86/svm.c
> description:
> reformat misaligned code.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 20 19:59:37 2005 -0500
> files: xen/arch/x86/svm.c
> description:
> Add additional AMD SVM specific CPUID logic.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Thu Dec 15 03:06:15 2005 -0400
> files: tools/xm-test/tests/block-create/01_block_attach_device_pos.py tools/xm-test/tests/block-create/02_block_attach_file_device_pos.py tools/xm-test/tests/block-create/04_block_attach_device_repeatedly_pos.py tools/xm-test/tests/block-create/05_block_attach_and_dettach_device_repeatedly_pos.py tools/xm-test/tests/block-create/06_block_attach_baddomain_neg.py tools/xm-test/tests/block-create/07_block_attach_baddevice_neg.py tools/xm-test/tests/block-create/08_block_attach_bad_filedevice_neg.py tools/xm-test/tests/block-create/09_block_attach_and_dettach_device_check_data_pos.py tools/xm-test/tests/block-create/10_block_attach_dettach_multiple_devices.py tools/xm-test/tests/block-create/11_block_attach_shared_dom0.py tools/xm-test/tests/block-create/12_block_attach_shared_domU.py tools/xm-test/tests/block-destroy/01_block-destroy_btblock_pos.py tools/xm-test/tests/block-destroy/02_block-destroy_rtblock_pos.py tools/xm-test/tests/block-destroy/04_block-destroy_nonattached_neg.py tools/xm-test/tests/block-destroy/05_block-destroy_byname_pos.py tools/xm-test/tests/block-destroy/06_block-destroy_check_list_pos.py tools/xm-test/tests/block-list/01_block-list_pos.py tools/xm-test/tests/block-list/02_block-list_attachbd_pos.py tools/xm-test/tests/block-list/03_block-list_anotherbd_pos.py tools/xm-test/tests/block-list/04_block-list_nodb_pos.py tools/xm-test/tests/block-list/06_block-list_checkremove_pos.py tools/xm-test/tests/memmax/01_memmax_badparm_neg.py tools/xm-test/tests/memset/01_memset_basic_pos.py tools/xm-test/tests/memset/02_memset_badparm_neg.py tools/xm-test/tests/memset/03_memset_random_pos.py tools/xm-test/tests/memset/04_memset_smallmem_pos.py tools/xm-test/tests/migrate/01_migrate_localhost_pos.py tools/xm-test/tests/network-attach/01_network_attach_pos.py tools/xm-test/tests/network-attach/02_network_attach_detach_pos.py tools/xm-test/tests/network-attach/03_network_attach_detach_multiple_pos.py tools/xm-test/tests/restore/01_restore_basic_pos.py tools/xm-test/tests/restore/02_restore_badparm_neg.py tools/xm-test/tests/restore/03_restore_badfilename_neg.py tools/xm-test/tests/restore/04_restore_withdevices_pos.py tools/xm-test/tests/save/01_save_basic_pos.py tools/xm-test/tests/save/02_save_badparm_neg.py tools/xm-test/tests/save/03_save_bogusfile_neg.py tools/xm-test/tests/sysrq/01_sysrq_basic_neg.py tools/xm-test/tests/sysrq/02_sysrq_sync_pos.py tools/xm-test/tests/sysrq/03_sysrq_withreboot_pos.py
> description:
> Adding SKIP() to tests that aren't supported for VMX domains.
>
> Signed-off-by: Dan Stekloff <dsteklof@us.ibm.com >
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Tue Dec 13 22:43:47 2005 -0400
> files: xen/arch/x86/svm.c xen/arch/x86/vmx.c xen/arch/x86/vmx_io.c xen/include/asm-x86/hvm_vpit.h xen/include/asm-x86/msr.h
> description:
> Support VMX guest accesses to IA32_TIME_STAMP_COUNTER MSR.
>
> Signed-off-by: Haifeng Xue <haifeng.xue@intel.com >
> Signed-off-by: Leendert van Doorn <leendert@us.ibm.com >
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 13 19:49:53 2005 -0500
> files: xen/arch/x86/svm.c xen/arch/x86/svm_emulate.c xen/arch/x86/svm_instrlen.c xen/arch/x86/svm_intr.c xen/arch/x86/svm_vmcb.c xen/include/asm-x86/svm.h xen/include/asm-x86/svm_emulate.h xen/include/asm-x86/svm_intr.h xen/include/asm-x86/svm_vmcb.h xen/include/asm-x86/svm_vmmcall.h
> description:
> Add SVM base files to repository.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 13 19:49:02 2005 -0500
> files: xen/arch/x86/x86_32/entry.S xen/arch/x86/x86_64/entry.S
> description:
> Add SVM entry points for launch/resume.
>
>
> user: twoller@xen-trw1.site
> date: Tue Dec 13 19:47:38 2005 -0500
> files: .hgignore
> description:
> Add hvmloader files to ignore list.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Mon Dec 12 22:58:54 2005 -0400
> files: docs/src/user.tex tools/firmware/README xen/include/asm-x86/hvm.h
> description:
> Removed dirty words (by request).
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Mon Dec 12 05:48:22 2005 -0400
> files: tools/firmware/hvmloader/mkhex
> description:
> Fix file mode.
>
> Signed-off-by: Leendert van Doorn <leendert@watson.ibm.com >
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Mon Dec 12 04:50:42 2005 -0400
> files: xen/Rules.mk xen/arch/x86/cpu/amd.c xen/arch/x86/cpu/intel.c xen/arch/x86/dm/hvm_vioapic.c xen/arch/x86/dm/i8259.c xen/arch/x86/dom0_ops.c xen/arch/x86/domain.c xen/arch/x86/hvm.c xen/arch/x86/hvm_intercept.c xen/arch/x86/hvm_io.c xen/arch/x86/hvm_platform.c xen/arch/x86/hvm_vlapic.c xen/arch/x86/mpparse.c xen/arch/x86/shadow.c xen/arch/x86/vmx.c xen/arch/x86/vmx_io.c xen/arch/x86/vmx_vmcs.c xen/arch/x86/x86_32/asm-offsets.c xen/arch/x86/x86_32/entry.S xen/arch/x86/x86_64/asm-offsets.c xen/arch/x86/x86_64/entry.S xen/arch/x86/x86_64/mm.c xen/include/asm-x86/config.h xen/include/asm-x86/cpufeature.h xen/include/asm-x86/domain.h xen/include/asm-x86/hvm_domain.h xen/include/asm-x86/hvm_io.h xen/include/asm-x86/hvm_support.h xen/include/asm-x86/hvm_vcpu.h xen/include/asm-x86/hvm_vioapic.h xen/include/asm-x86/hvm_vlapic.h xen/include/asm-x86/hvm_vpic.h xen/include/asm-x86/hvm_vpit.h xen/include/asm-x86/mpspec.h xen/include/asm-x86/msr.h xen/include/asm-x86/processor.h xen/include/asm-x86/vmx.h xen/include/asm-x86/vmx_cpu.h xen/include/asm-x86/vmx_vmcs.h
> description:
> Phase 3 of HVM integration: This patchset introduces the refactoring of
> virtualization architecture independent functions from specific ones.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Dec 11 07:02:51 2005 -0400
> files: xen/arch/x86/dom0_ops.c xen/arch/x86/domain.c xen/arch/x86/i387.c xen/arch/x86/shadow.c xen/arch/x86/vmx.c xen/arch/x86/x86_32/traps.c xen/arch/x86/x86_64/traps.c xen/include/asm-x86/hvm.h xen/include/asm-x86/hvm_support.h xen/include/asm-x86/regs.h xen/include/asm-x86/shadow.h xen/include/asm-x86/vmx_vmcs.h
> description:
> Phase 2 of HVM integration: This patchset introduces the hvm interface
> to the hypervisor and modifies all the non-vmx specific files to use it.
>
>
> user: leendert@eserver2.watson.ibm.com
> date: Sun Dec 11 01:10:00 2005 -0400
> files: tools/examples/Makefile tools/examples/README tools/examples/xmexample.hvm tools/ioemu/exec-all.h tools/ioemu/hw/i8254.c tools/ioemu/hw/i8259.c tools/ioemu/monitor.c tools/ioemu/target-i386-dm/helper2.c tools/ioemu/vl.c tools/libxc/Makefile tools/libxc/xc_hvm_build.c tools/libxc/xc_ptrace.c tools/libxc/xc_ptrace_core.c tools/libxc/xenguest.h tools/python/xen/lowlevel/xc/xc.c tools/python/xen/xend/image.py tools/python/xen/xm/create.py tools/xm-test/configure.ac tools/xm-test/lib/XmTestLib/XenDomain.py tools/xm-test/lib/XmTestLib/config.py.in tools/xm-test/ramdisk/Makefile.am tools/xm-test/ramdisk/bin/create_disk_image tools/xm-test/tests/block-list/04_block-list_nodb_pos.py xen/include/public/arch-x86_32.h xen/include/public/arch-x86_64.h
> description:
> Phase 1 of HVM integration: This patchset updates the tools. Most of the
> tools are machine independent except for some detection code in the hvm
> domain builder.
2006-01-31 11:49:51 +01:00
kaf24@firebug.cl.cam.ac.uk
981d16a128
Cleanup dirty code avoiding warning messages when compiling
...
ioemu.
Signed-off-by: Haifeng Xue <haifeng.xue@intel.com >
2006-01-19 09:12:40 +01:00
kaf24@firebug.cl.cam.ac.uk
6b38c4a0e1
Move public hvm interfaces into xen/include/public/hvm.
...
Add new header hvm_info_table.h for defining location and
contents of acpi-style hvm_info_table. Remove duplicate
definition in vmxassist/acpi_madt.c.
Signed-off-by: Keir Fraser <keir@xensource.com >
2006-01-03 14:58:34 +01:00
kaf24@firebug.cl.cam.ac.uk
29c3bf78b9
Rename VMX option name lapic to apic, and pass it to xen by
...
hvm_info_table. Previous we pass it to xen by guest vcpu context ECX
register, now we unify to use hvm_info_table.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2006-01-03 14:35:45 +01:00
kaf24@firebug.cl.cam.ac.uk
cfa0fac2c2
Provide an option to disable ACPI from the VMX config file.
...
By default ACPI is disabled.
Signed-off-by: Yu Ke <ke.yu@intel.com >
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com >
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com >
2006-01-01 11:29:17 +01:00
kaf24@firebug.cl.cam.ac.uk
74df472110
some fixes to VMX:
...
1) enable ACPI in VMXAssist by default.
2) do nothing when emulating wbinvd instruction in VMXAssist.
3) use MACRO in cpu number setting/getting code.
4) remove useless parameter flags from xc_vmx_build.
5) remove usage of dsi.v_start in xc_vmx_build when not handling
vmxloader elf.
6) unmap shared_page_va when destroy VMX domain.
7) change virtual_platform_def to vmx_platform.
8) remove useless code in vmx_setup_platform.
9) change parameter of vmx_setup_platform from vcpu to domain.
10) in xen HV, vmx domain get domain processor number from the reserved
E820 area.
11) in domain.c, don't define some functions when on i386 platform or no
CONFIG_VMX.
Also removed some ugly tailing space.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2005-10-23 11:51:15 +01:00
kaf24@firebug.cl.cam.ac.uk
a442cd731d
Fix 64-bit compile warnings in firmware.
...
Signed-off-by: Keir Fraser <keir@xensource.com >
2005-10-12 16:15:02 +01:00
kaf24@firebug.cl.cam.ac.uk
f95154b372
Fix firmware build for cross-compilation.
...
Signed-off-by: Keir Fraser <keir@xensource.com >
2005-10-12 13:03:10 +01:00
kaf24@firebug.cl.cam.ac.uk
d8263e8dba
Fix Xen public interfaces and the tools to consistently
...
use stdint-format bitsize types (uint32_t and friends).
Signed-off-by: Keir Fraser <keir@xensource.com >
2005-10-12 11:07:37 +01:00
kaf24@firebug.cl.cam.ac.uk
1cd0f4f23f
Fix tools to pull public header files from standard
...
location in libxc directory. Not direct from xen and
xenlinux build trees! Also fix a type name in
x86_emulator test harness.
Signed-off-by: Keir Fraser <keir@xensource.com >
2005-10-04 15:02:18 +01:00
kaf24@firebug.cl.cam.ac.uk
709c2fe3d3
Set guest selectors to be null if it's not valid when switch to
...
protected-mode in the guest firmware.
Signed-off-by: Chengyuan Li <chengyuan.li@intel.com >
Signed-off-by: Asit Mallick <asit.k.mallick@intel.com >
2005-09-29 09:59:46 +01:00
kaf24@firebug.cl.cam.ac.uk
ae4846b8e4
With this patch, we can enable VMXAssist to bring up APs of SMP VMX
...
guest. On entry to VMXAssist:
1) %edx is the processor number, i.e. vcpu id, and for BSP it's 0.
2) %ebx is the vector number from SIPI.
Also removed some ugly tailing space.
Signed-off-by: Xin Li <xin.b.li@intel.com >
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com >
2005-09-28 14:05:58 +01:00
kaf24@firebug.cl.cam.ac.uk
ae7167d743
This patch adds "wbinvd" instruction emulation for vm86 mode.
...
This is needed when we bring up AP of SMP VMX guest.
Signed-off-by: Xin Li <xin.b.li@intel.com >
2005-09-27 15:11:07 +01:00
kaf24@firebug.cl.cam.ac.uk
2b3f9eda6b
Clean up xc_vmx_build():
...
1. Remove linux parameters.
2. Remove init ramdisk.
3. Remove e820 memmap config file parse.
4. Removed provisional GDT.
5. Removed some ugly tailing space.
Signed-off-by: Xin B Li <xin.b.li@intel.com >
2005-09-23 12:52:43 +01:00