-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Xiantao Zhang
authored and
Avi Kivity
committed
Apr 27, 2008
1 parent
bfa7a09
commit 2d1f08c
Showing
2 changed files
with
83 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
--- | ||
refs/heads/master: b693919ca983e9eb989d89dac5493ef3c5e98e77 | ||
refs/heads/master: fdae862f91728aec6dd8fd62cd2398868c906b6b |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
Currently, kvm module in EXPERIMENTAL stage on IA64. This means that | ||
interfaces are not stable enough to use. So, plase had better don't run | ||
critical applications in virtual machine. We will try our best to make it | ||
strong in future versions! | ||
Guide: How to boot up guests on kvm/ia64 | ||
|
||
This guide is to describe how to enable kvm support for IA-64 systems. | ||
|
||
1. Get the kvm source from git.kernel.org. | ||
Userspace source: | ||
git clone git://git.kernel.org/pub/scm/virt/kvm/kvm-userspace.git | ||
Kernel Source: | ||
git clone git://git.kernel.org/pub/scm/linux/kernel/git/xiantao/kvm-ia64.git | ||
|
||
2. Compile the source code. | ||
2.1 Compile userspace code: | ||
(1)cd ./kvm-userspace | ||
(2)./configure | ||
(3)cd kernel | ||
(4)make sync LINUX= $kernel_dir (kernel_dir is the directory of kernel source.) | ||
(5)cd .. | ||
(6)make qemu | ||
(7)cd qemu; make install | ||
|
||
2.2 Compile kernel source code: | ||
(1) cd ./$kernel_dir | ||
(2) Make menuconfig | ||
(3) Enter into virtualization option, and choose kvm. | ||
(4) make | ||
(5) Once (4) done, make modules_install | ||
(6) Make initrd, and use new kernel to reboot up host machine. | ||
(7) Once (6) done, cd $kernel_dir/arch/ia64/kvm | ||
(8) insmod kvm.ko; insmod kvm-intel.ko | ||
|
||
Note: For step 2, please make sure that host page size == TARGET_PAGE_SIZE of qemu, otherwise, may fail. | ||
|
||
3. Get Guest Firmware named as Flash.fd, and put it under right place: | ||
(1) If you have the guest firmware (binary) released by Intel Corp for Xen, use it directly. | ||
|
||
(2) If you have no firmware at hand, Please download its source from | ||
hg clone http://xenbits.xensource.com/ext/efi-vfirmware.hg | ||
you can get the firmware's binary in the directory of efi-vfirmware.hg/binaries. | ||
|
||
(3) Rename the firware you owned to Flash.fd, and copy it to /usr/local/share/qemu | ||
|
||
4. Boot up Linux or Windows guests: | ||
4.1 Create or install a image for guest boot. If you have xen experience, it should be easy. | ||
|
||
4.2 Boot up guests use the following command. | ||
/usr/local/bin/qemu-system-ia64 -smp xx -m 512 -hda $your_image | ||
(xx is the number of virtual processors for the guest, now the maximum value is 4) | ||
|
||
5. Known possibile issue on some platforms with old Firmware. | ||
|
||
If meet strange host crashe issues, try to solve it through either of the following ways: | ||
|
||
(1): Upgrade your Firmware to the latest one. | ||
|
||
(2): Applying the below patch to kernel source. | ||
diff --git a/arch/ia64/kernel/pal.S b/arch/ia64/kernel/pal.S | ||
index 0b53344..f02b0f7 100644 | ||
--- a/arch/ia64/kernel/pal.S | ||
+++ b/arch/ia64/kernel/pal.S | ||
@@ -84,7 +84,8 @@ GLOBAL_ENTRY(ia64_pal_call_static) | ||
mov ar.pfs = loc1 | ||
mov rp = loc0 | ||
;; | ||
- srlz.d // seralize restoration of psr.l | ||
+ srlz.i // seralize restoration of psr.l | ||
+ ;; | ||
br.ret.sptk.many b0 | ||
END(ia64_pal_call_static) | ||
|
||
6. Bug report: | ||
If you found any issues when use kvm/ia64, Please post the bug info to kvm-ia64-devel mailing list. | ||
https://lists.sourceforge.net/lists/listinfo/kvm-ia64-devel/ | ||
|
||
Thanks for your interest! Let's work together, and make kvm/ia64 stronger and stronger! | ||
|
||
|
||
Xiantao Zhang <xiantao.zhang@intel.com> | ||
2008.3.10 |