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 possible issue on some platforms with old Firmware.

In the event of strange host crash 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				// serialize restoration of psr.l
+	srlz.i			// serialize 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
